home *** CD-ROM | disk | FTP | other *** search
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was processed as: Tape Archive
(archive/tar).
You can browse this item here: WWWPOLL.TAR
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| dexvert
| Tape Archive (archive/tar)
| magic
| Supported |
100%
| file
| tar archive
| default
| |
99%
| file
| tar archive (V7), file ./, mode 775 , uid 247 , gid 146 , size 0 , seconds 6001551656
| default
| |
98%
| file
| data
| default
| |
100%
| TrID
| Sybase iAnywhere database files
| default (weak)
| |
100%
| siegfried
| x-fmt/265 Tape Archive Format
| default
| |
100%
| lsar
| Tar
| default
| |
100%
| gt2
| TAR Archiv gefunden (Auflistung ist deaktiviert)
| default
| |
100%
| disktype
| Pre-POSIX tar archive
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 2e 2f 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |./......|........|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000050| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000060| 00 00 00 00 20 20 20 37 | 37 35 20 00 20 20 20 32 |.... 7|75 . 2|
|00000070| 34 37 20 00 20 20 20 31 | 34 36 20 00 20 20 20 20 |47 . 1|46 . |
|00000080| 20 20 20 20 20 20 30 20 | 20 36 30 30 31 35 35 31 | 0 | 6001551|
|00000090| 36 35 36 20 20 20 34 32 | 31 33 00 20 00 00 00 00 |656 42|13. ....|
|000000a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000100| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000110| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000120| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000130| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000140| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000150| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000160| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000170| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000180| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000190| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000200| 2e 2f 65 72 72 6f 72 2e | 67 69 66 00 00 00 00 00 |./error.|gif.....|
|00000210| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000220| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000230| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000240| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000250| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000260| 00 00 00 00 20 20 20 36 | 36 36 20 00 20 20 20 32 |.... 6|66 . 2|
|00000270| 34 37 20 00 20 20 20 31 | 34 36 20 00 20 20 20 20 |47 . 1|46 . |
|00000280| 20 20 20 20 34 30 31 20 | 20 35 36 35 36 32 31 31 | 401 | 5656211|
|00000290| 32 34 31 20 20 20 36 30 | 37 33 00 20 00 00 00 00 |241 60|73. ....|
|000002a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000300| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000310| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000320| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000330| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000340| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000350| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000360| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000370| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000380| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000390| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000400| 47 49 46 38 37 61 28 00 | 25 00 c2 00 00 00 00 00 |GIF87a(.|%.......|
|00000410| ff ff ff be be be 6e 6e | 6e fb 00 00 00 00 00 00 |......nn|n.......|
|00000420| 00 00 00 00 00 2c 00 00 | 00 00 28 00 25 00 00 03 |.....,..|..(.%...|
|00000430| ce 08 ba dc fe b0 85 49 | ab bd 38 07 a1 b4 ff 97 |.......I|..8.....|
|00000440| 30 74 9b 60 9e 68 aa ae | e9 30 02 13 2b cf ab 4b |0t.`.h..|.0..+..K|
|00000450| d2 28 a1 13 f8 69 c3 25 | dc 6e d7 13 bd 62 bd a1 |.(...i.%|.n...b..|
|00000460| ae f8 43 d2 94 44 5c 33 | 38 83 2e a5 47 2a cb 1a |..C..D\3|8...G*..|
|00000470| 9d 4d 85 5c 1e ed 5b 0d | 5f 65 64 99 f9 cc 4a af |.M.\..[.|_ed...J.|
|00000480| a0 13 a8 37 5b 1e c6 95 | f3 db 56 19 e8 c8 db 74 |...7[...|..V....t|
|00000490| 7b 76 7e 78 80 7a 2a 70 | 7d 40 7f 2a 6e 39 7c 8a |{v~x.z*p|}@.*n9|.|
|000004a0| 77 43 86 40 6f 90 91 92 | 5d 28 8e 26 89 98 01 8c |wC.@o...|](.&....|
|000004b0| 9b 81 8f 76 14 24 99 6c | 26 9c 9e 18 a1 aa a3 9d |...v.$.l|&.......|
|000004c0| 97 13 a7 a8 62 3e b0 02 | ac 9f b5 2d b0 ba 1a a1 |....b>..|...-....|
|000004d0| 6e 6b c3 9a 69 c4 c7 b6 | c6 c8 c3 b7 7a cb c7 af |nk..i...|....z...|
|000004e0| ce cf cc 46 87 45 d7 d1 | 95 d8 db 4d 46 2e df e0 |...F.E..|...MF...|
|000004f0| e1 e2 e3 e3 0a de e4 e8 | e9 e5 11 ec ed ec 09 00 |........|........|
|00000500| 3b 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |;.......|........|
|00000510| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000520| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000530| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000540| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000550| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000560| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000570| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000580| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000590| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000600| 2e 2f 6d 61 72 62 6c 65 | 62 61 63 6b 2e 67 69 66 |./marble|back.gif|
|00000610| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000620| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000630| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000640| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000650| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000660| 00 00 00 00 20 20 20 36 | 36 36 20 00 20 20 20 32 |.... 6|66 . 2|
|00000670| 34 37 20 00 20 20 20 31 | 34 36 20 00 20 20 20 20 |47 . 1|46 . |
|00000680| 20 20 20 20 37 36 31 20 | 20 35 36 35 36 32 31 31 | 761 | 5656211|
|00000690| 32 34 31 20 20 20 37 30 | 33 36 00 20 00 00 00 00 |241 70|36. ....|
|000006a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000006b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000006c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000006d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000006e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000006f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000700| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000710| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000720| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000730| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000740| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000750| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000760| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000770| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000780| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000790| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000007f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000800| 47 49 46 38 37 61 1e 00 | 1e 00 f3 00 00 eb ed ee |GIF87a..|........|
|00000810| dd e1 e3 cf d4 d7 c2 c9 | cd b5 bd c2 ae b7 bc a7 |........|........|
|00000820| b0 b6 99 a4 ab 8c 98 a0 | 7e 8c 95 77 86 8f 6c 7a |........|~..w..lz|
|00000830| 83 60 6c 74 55 60 67 4f | 5a 60 00 00 00 2c 00 00 |.`ltU`gO|Z`...,..|
|00000840| 00 00 1e 00 1e 00 00 04 | fe 10 c8 49 6b 15 c2 02 |........|...Ik...|
|00000850| a6 7b 0d 81 65 70 c0 30 | 08 c4 61 0c 20 86 11 2c |.{..ep.0|..a. ..,|
|00000860| 10 0c 44 61 c0 c2 90 2c | d2 39 18 88 c2 29 80 22 |..Da...,|.9...)."|
|00000870| d4 08 82 96 69 69 54 f0 | 00 46 5a 14 f3 13 9e 92 |....iiT.|.FZ.....|
|00000880| 44 5c 0e 96 48 48 0e 07 | 23 c1 70 db 5e 97 28 46 |D\..HH..|#.p.^.(F|
|00000890| c1 95 4c 28 24 e4 82 1c | 8c 94 9a 8c 86 45 a3 61 |..L($...|.....E.a|
|000008a0| 65 05 10 6f 25 3e 03 72 | 4c 05 46 05 09 0e 0e 0d |e..o%>.r|L.F.....|
|000008b0| 0c 30 48 44 40 3d 6c 63 | 62 62 08 7b 7b 0c 8e 34 |.0HD@=lc|bb.{{..4|
|000008c0| 54 07 5e 82 67 87 97 99 | 8d 0c 0b 0b 56 54 08 08 |T.^.g...|....VT..|
|000008d0| 3d 26 5b 56 05 0c 8c a6 | 0b 0a 4e 07 4b 84 08 07 |=&[V....|..N.K...|
|000008e0| 3d 30 34 06 42 09 0d 8c | a7 a8 09 ac 0a 61 bf 04 |=04.B...|.....a..|
|000008f0| 0c 81 51 52 c3 7b 8c b6 | 0a 5d 08 5d 87 42 39 9b |..QR.{..|.].].B9.|
|00000900| 12 72 30 07 b3 99 d4 d7 | d8 6e 42 bf 03 0b 24 87 |.r0.....|.nB...$.|
|00000910| 03 07 8b 9a 0c 8d d6 ac | e6 09 8f 62 dd 00 6c 79 |........|...b..ly|
|00000920| b5 b6 5d c8 b0 b1 12 b3 | 44 1f 91 57 02 10 6c 3a |..].....|D..W..l:|
|00000930| 16 90 15 b2 04 61 d0 dc | f2 d5 4e cc 01 54 ff ea |.....a..|..N..T..|
|00000940| 39 cc 95 c3 04 2b 6f a7 | ac 96 21 41 91 e0 14 40 |9....+o.|..!A...@|
|00000950| 87 0b 22 22 b2 05 e7 00 | 2f 2d 2f 3e b9 51 c0 6b |..""....|/-/>.Q.k|
|00000960| 47 10 82 fa 68 80 b9 92 | 83 8a bb 63 2e 13 04 fb |G...h...|...c....|
|00000970| 26 c0 8d 84 1c 72 92 6c | 71 51 a3 80 c0 81 36 84 |&....r.l|qQ....6.|
|00000980| 04 20 d3 c3 c6 48 3b 26 | 0c 1c b0 62 4e db 9a a9 |. ...H;&|...bN...|
|00000990| bd f6 69 3d 31 46 ab 15 | 3a 54 0c 28 58 53 e3 84 |..i=1F..|:T.(XS..|
|000009a0| c2 a3 5a 6a 68 1d 39 f7 | c5 b6 2c 4d 48 f4 ec 48 |..Zjh.9.|..,MH..H|
|000009b0| 63 9b 80 42 35 54 f8 99 | 61 03 d5 51 17 3c 5f d9 |c..B5T..|a..Q.<_.|
|000009c0| 29 3b f2 a0 11 7d 7b 0d | 5d 01 5c 40 30 08 c2 79 |);...}{.|].\@0..y|
|000009d0| 78 e4 81 f8 54 05 19 99 | 3b 9c 85 fc 84 11 e2 86 |x...T...|;.......|
|000009e0| 4d 0d 79 91 f9 dc 65 21 | 18 32 0a 17 a8 8e 00 00 |M.y...e!|.2......|
|000009f0| 3b 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |;.......|........|
|00000a00| 2e 2f 77 77 77 70 6f 6c | 6c 2e 63 00 00 00 00 00 |./wwwpol|l.c.....|
|00000a10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000a20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000a30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000a40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000a50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000a60| 00 00 00 00 20 20 20 36 | 36 36 20 00 20 20 20 32 |.... 6|66 . 2|
|00000a70| 34 37 20 00 20 20 20 31 | 34 36 20 00 20 20 20 20 |47 . 1|46 . |
|00000a80| 20 20 35 36 31 36 34 20 | 20 36 30 30 31 35 35 31 | 56164 | 6001551|
|00000a90| 32 34 36 20 20 20 36 32 | 31 30 00 20 00 00 00 00 |246 62|10. ....|
|00000aa0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000ab0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000ac0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000ad0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000ae0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000af0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b00| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000ba0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000bb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000bc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000bd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000be0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000bf0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000c00| 2f 2a 20 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |/* -----|--------|
|00000c10| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000c20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000c30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000c40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 20 2a 2f 0a 0a |--------|--- */..|
|00000c50| 2f 2a 20 20 57 57 57 20 | 50 6f 6c 6c 20 53 63 72 |/* WWW |Poll Scr|
|00000c60| 69 70 74 2c 20 56 65 72 | 73 69 6f 6e 20 31 2e 31 |ipt, Ver|sion 1.1|
|00000c70| 0a 20 20 20 20 43 6f 70 | 79 72 69 67 68 74 20 31 |. Cop|yright 1|
|00000c80| 39 39 34 2c 20 43 72 65 | 61 74 69 76 65 20 49 6e |994, Cre|ative In|
|00000c90| 74 65 72 6e 65 74 20 44 | 65 73 69 67 6e 73 0a 20 |ternet D|esigns. |
|00000ca0| 20 20 20 62 79 20 4a 6f | 73 65 70 68 20 45 2e 20 | by Jo|seph E. |
|00000cb0| 43 61 74 65 73 20 61 6e | 64 20 41 75 72 65 20 50 |Cates an|d Aure P|
|00000cc0| 72 6f 63 68 61 7a 6b 61 | 0a 0a 20 20 20 20 44 6f |rochazka|.. Do|
|00000cd0| 63 75 6d 65 6e 74 61 74 | 69 6f 6e 20 61 6e 64 20 |cumentat|ion and |
|00000ce0| 6d 6f 73 74 20 63 75 72 | 72 65 6e 74 20 76 65 72 |most cur|rent ver|
|00000cf0| 73 69 6f 6e 20 61 76 61 | 69 6c 61 62 6c 65 20 61 |sion ava|ilable a|
|00000d00| 74 3a 0a 20 20 20 20 20 | 20 68 74 74 70 3a 2f 2f |t:. | http://|
|00000d10| 77 77 77 2e 67 61 6c 63 | 69 74 2e 63 61 6c 74 65 |www.galc|it.calte|
|00000d20| 63 68 2e 65 64 75 2f 7e | 74 61 2f 64 65 6d 6f 73 |ch.edu/~|ta/demos|
|00000d30| 2f 77 77 77 70 6f 6c 6c | 2f 77 77 77 70 6f 6c 6c |/wwwpoll|/wwwpoll|
|00000d40| 2e 68 74 6d 6c 0a 0a 2a | 2f 0a 0a 23 69 6e 63 6c |.html..*|/..#incl|
|00000d50| 75 64 65 20 22 77 77 77 | 70 6f 6c 6c 2e 68 22 0a |ude "www|poll.h".|
|00000d60| 0a 20 20 20 20 20 20 20 | 20 2f 2a 20 73 74 72 75 |. | /* stru|
|00000d70| 63 74 75 72 65 73 20 66 | 6f 72 20 66 6f 72 6d 20 |ctures f|or form |
|00000d80| 72 65 73 75 6c 74 73 20 | 2a 2f 0a 0a 09 74 79 70 |results |*/...typ|
|00000d90| 65 64 65 66 20 73 74 72 | 75 63 74 20 7b 0a 09 20 |edef str|uct {.. |
|00000da0| 20 63 68 61 72 20 2a 6e | 61 6d 65 3b 0a 09 20 20 | char *n|ame;.. |
|00000db0| 63 68 61 72 20 2a 76 61 | 6c 3b 0a 09 7d 20 66 6f |char *va|l;..} fo|
|00000dc0| 72 6d 72 65 73 5f 65 6e | 74 72 79 3b 0a 0a 09 74 |rmres_en|try;...t|
|00000dd0| 79 70 65 64 65 66 20 73 | 74 72 75 63 74 20 7b 0a |ypedef s|truct {.|
|00000de0| 09 20 20 69 6e 74 20 6e | 76 6f 74 65 73 3b 0a 09 |. int n|votes;..|
|00000df0| 20 20 63 68 61 72 20 6e | 61 6d 65 5b 4d 41 58 5f | char n|ame[MAX_|
|00000e00| 4e 41 4d 45 5f 4c 45 4e | 5d 3b 0a 09 7d 20 6c 69 |NAME_LEN|];..} li|
|00000e10| 73 74 5f 65 6e 74 72 79 | 3b 0a 0a 20 09 74 79 70 |st_entry|;.. .typ|
|00000e20| 65 64 65 66 20 73 74 72 | 75 63 74 20 7b 0a 09 20 |edef str|uct {.. |
|00000e30| 20 63 68 61 72 20 6e 61 | 6d 65 5b 4d 41 58 5f 56 | char na|me[MAX_V|
|00000e40| 4f 54 45 52 5f 4c 45 4e | 5d 3b 0a 09 7d 20 76 6f |OTER_LEN|];..} vo|
|00000e50| 74 65 72 6c 6f 67 5f 65 | 6e 74 72 79 3b 0a 0a 0a |terlog_e|ntry;...|
|00000e60| 20 20 20 76 6f 69 64 20 | 77 72 5f 6c 69 73 74 28 | void |wr_list(|
|00000e70| 63 68 61 72 20 2a 6c 69 | 73 74 6e 61 6d 65 29 3b |char *li|stname);|
|00000e80| 0a 20 20 20 76 6f 69 64 | 20 77 72 5f 68 74 69 6e |. void| wr_htin|
|00000e90| 63 5f 66 69 6c 65 28 63 | 68 61 72 20 2a 6c 69 73 |c_file(c|har *lis|
|00000ea0| 74 6e 61 6d 65 29 3b 0a | 20 20 20 76 6f 69 64 20 |tname);.| void |
|00000eb0| 77 72 5f 6c 6f 67 28 63 | 68 61 72 20 2a 73 31 2c |wr_log(c|har *s1,|
|00000ec0| 20 63 68 61 72 20 2a 73 | 32 29 3b 0a 20 20 20 76 | char *s|2);. v|
|00000ed0| 6f 69 64 20 6c 6f 61 64 | 5f 6c 69 73 74 28 63 68 |oid load|_list(ch|
|00000ee0| 61 72 20 2a 6c 69 73 74 | 6e 61 6d 65 29 3b 0a 20 |ar *list|name);. |
|00000ef0| 20 20 20 20 20 20 20 0a | 20 20 20 76 6f 69 64 20 | .| void |
|00000f00| 64 69 73 70 5f 6d 61 69 | 6e 5f 70 61 67 65 28 69 |disp_mai|n_page(i|
|00000f10| 6e 74 20 69 73 74 61 74 | 75 73 29 3b 0a 20 20 20 |nt istat|us);. |
|00000f20| 76 6f 69 64 20 61 64 64 | 5f 65 6e 74 72 79 5f 70 |void add|_entry_p|
|00000f30| 61 67 65 28 63 68 61 72 | 20 2a 6c 69 73 74 29 3b |age(char| *list);|
|00000f40| 0a 20 20 20 76 6f 69 64 | 20 68 74 6d 6c 5f 68 65 |. void| html_he|
|00000f50| 61 64 65 72 28 63 68 61 | 72 20 2a 73 31 2c 20 63 |ader(cha|r *s1, c|
|00000f60| 68 61 72 20 2a 73 32 29 | 3b 0a 20 20 20 20 20 20 |har *s2)|;. |
|00000f70| 20 20 0a 20 20 20 76 6f | 69 64 20 61 6c 72 65 61 | . vo|id alrea|
|00000f80| 64 79 5f 67 6f 74 5f 6f | 6e 65 28 29 3b 0a 20 20 |dy_got_o|ne();. |
|00000f90| 20 76 6f 69 64 20 74 6f | 6f 5f 6d 61 6e 79 5f 69 | void to|o_many_i|
|00000fa0| 74 65 6d 73 28 29 3b 0a | 20 20 20 76 6f 69 64 20 |tems();.| void |
|00000fb0| 62 61 64 5f 6f 70 74 69 | 6f 6e 5f 66 6f 72 5f 71 |bad_opti|on_for_q|
|00000fc0| 75 65 73 74 69 6f 6e 28 | 29 3b 0a 20 20 20 76 6f |uestion(|);. vo|
|00000fd0| 69 64 20 62 61 64 5f 66 | 6f 72 6d 5f 72 65 73 28 |id bad_f|orm_res(|
|00000fe0| 29 3b 0a 0a 20 20 20 76 | 6f 69 64 20 65 72 72 5f |);.. v|oid err_|
|00000ff0| 6d 73 67 28 63 68 61 72 | 20 2a 73 31 2c 20 63 68 |msg(char| *s1, ch|
|00001000| 61 72 20 2a 73 32 29 3b | 0a 20 20 20 76 6f 69 64 |ar *s2);|. void|
|00001010| 20 65 72 72 6f 72 5f 66 | 6f 6f 74 65 72 28 63 68 | error_f|ooter(ch|
|00001020| 61 72 20 2a 73 29 3b 0a | 20 20 20 76 6f 69 64 20 |ar *s);.| void |
|00001030| 69 6e 70 75 74 5f 65 72 | 72 28 69 6e 74 20 65 72 |input_er|r(int er|
|00001040| 72 5f 63 6f 64 65 29 3b | 0a 0a 20 20 20 69 6e 74 |r_code);|.. int|
|00001050| 20 69 6e 63 6c 75 64 65 | 5f 66 69 6c 65 28 63 68 | include|_file(ch|
|00001060| 61 72 20 2a 66 6c 6e 61 | 6d 65 29 3b 0a 0a 20 20 |ar *flna|me);.. |
|00001070| 20 76 6f 69 64 20 67 65 | 74 5f 68 6f 73 74 5f 69 | void ge|t_host_i|
|00001080| 6e 66 6f 28 63 68 61 72 | 20 2a 68 6f 73 74 69 6e |nfo(char| *hostin|
|00001090| 66 6f 2c 20 69 6e 74 20 | 6d 61 78 6c 65 6e 67 74 |fo, int |maxlengt|
|000010a0| 68 29 3b 0a 20 20 20 76 | 6f 69 64 20 73 74 72 69 |h);. v|oid stri|
|000010b0| 70 5f 65 6e 64 5f 63 72 | 28 63 68 61 72 20 2a 73 |p_end_cr|(char *s|
|000010c0| 29 3b 0a 20 20 20 76 6f | 69 64 20 73 74 72 69 70 |);. vo|id strip|
|000010d0| 5f 77 68 69 74 65 28 63 | 68 61 72 20 2a 73 29 3b |_white(c|har *s);|
|000010e0| 0a 0a 20 20 20 76 6f 69 | 64 20 75 6e 65 73 63 61 |.. voi|d unesca|
|000010f0| 70 65 5f 75 72 6c 28 63 | 68 61 72 20 2a 75 72 6c |pe_url(c|har *url|
|00001100| 29 3b 0a 20 20 20 76 6f | 69 64 20 70 6c 75 73 5f |);. vo|id plus_|
|00001110| 74 6f 5f 73 70 61 63 65 | 28 63 68 61 72 20 2a 73 |to_space|(char *s|
|00001120| 29 3b 0a 0a 20 20 20 63 | 68 61 72 20 2a 6d 61 6b |);.. c|har *mak|
|00001130| 65 77 6f 72 64 28 63 68 | 61 72 20 2a 6c 69 6e 65 |eword(ch|ar *line|
|00001140| 2c 20 63 68 61 72 20 73 | 74 6f 70 29 3b 0a 20 20 |, char s|top);. |
|00001150| 20 63 68 61 72 20 2a 66 | 6d 61 6b 65 77 6f 72 64 | char *f|makeword|
|00001160| 28 46 49 4c 45 20 2a 66 | 2c 20 63 68 61 72 20 73 |(FILE *f|, char s|
|00001170| 74 6f 70 2c 20 69 6e 74 | 20 2a 6c 65 6e 29 3b 0a |top, int| *len);.|
|00001180| 20 20 20 63 68 61 72 20 | 78 32 63 28 63 68 61 72 | char |x2c(char|
|00001190| 20 2a 77 68 61 74 29 3b | 0a 0a 20 20 20 2f 2a 20 | *what);|.. /* |
|000011a0| 2d 2d 2d 2d 2d 20 67 6c | 6f 62 61 6c 20 76 61 72 |----- gl|obal var|
|000011b0| 69 61 62 6c 65 73 20 2d | 2d 2d 2d 2d 20 2a 2f 0a |iables -|---- */.|
|000011c0| 20 20 20 69 6e 74 20 74 | 6f 74 61 6c 6e 75 6d 76 | int t|otalnumv|
|000011d0| 6f 74 65 73 20 3d 20 30 | 2c 20 6e 75 6d 76 6f 74 |otes = 0|, numvot|
|000011e0| 65 72 6c 6f 67 3b 0a 20 | 20 20 69 6e 74 20 6e 71 |erlog;. | int nq|
|000011f0| 75 65 73 74 2c 20 6e 6f | 76 6f 74 65 66 6c 61 67 |uest, no|voteflag|
|00001200| 20 3d 20 30 2c 20 6e 69 | 74 65 6d 73 3b 0a 20 20 | = 0, ni|tems;. |
|00001210| 20 20 20 20 20 0a 20 20 | 20 63 68 61 72 20 68 61 | . | char ha|
|00001220| 5b 4d 41 58 5f 56 4f 54 | 45 52 5f 4c 45 4e 5d 2c |[MAX_VOT|ER_LEN],|
|00001230| 20 6c 61 73 74 76 6f 74 | 65 72 5b 4d 41 58 5f 56 | lastvot|er[MAX_V|
|00001240| 4f 54 45 52 5f 4c 45 4e | 5d 3b 0a 0a 20 20 20 63 |OTER_LEN|];.. c|
|00001250| 68 61 72 20 71 68 65 61 | 64 65 72 5b 42 55 46 5f |har qhea|der[BUF_|
|00001260| 4c 45 4e 5d 2c 20 71 74 | 69 74 6c 65 5b 42 55 46 |LEN], qt|itle[BUF|
|00001270| 5f 4c 45 4e 5d 3b 0a 20 | 20 20 63 68 61 72 20 76 |_LEN];. | char v|
|00001280| 70 6c 75 73 5f 67 69 66 | 5b 42 55 46 5f 4c 45 4e |plus_gif|[BUF_LEN|
|00001290| 5d 2c 20 76 6d 69 6e 75 | 73 5f 67 69 66 5b 42 55 |], vminu|s_gif[BU|
|000012a0| 46 5f 4c 45 4e 5d 2c 20 | 61 64 64 5f 67 69 66 5b |F_LEN], |add_gif[|
|000012b0| 42 55 46 5f 4c 45 4e 5d | 3b 0a 20 20 20 63 68 61 |BUF_LEN]|;. cha|
|000012c0| 72 20 62 75 66 5b 42 55 | 46 5f 4c 45 4e 5d 3b 0a |r buf[BU|F_LEN];.|
|000012d0| 0a 20 20 20 66 6f 72 6d | 72 65 73 5f 65 6e 74 72 |. form|res_entr|
|000012e0| 79 20 65 6e 74 72 69 65 | 73 5b 4d 41 58 5f 46 4f |y entrie|s[MAX_FO|
|000012f0| 52 4d 5f 52 45 53 5d 3b | 0a 20 20 20 6c 69 73 74 |RM_RES];|. list|
|00001300| 5f 65 6e 74 72 79 20 62 | 6c 69 73 74 5b 4d 41 58 |_entry b|list[MAX|
|00001310| 5f 49 54 45 4d 53 5d 3b | 0a 0a 20 20 20 76 6f 74 |_ITEMS];|.. vot|
|00001320| 65 72 6c 6f 67 5f 65 6e | 74 72 79 20 2a 76 6c 6f |erlog_en|try *vlo|
|00001330| 67 5f 70 74 72 30 3b 0a | 0a 20 20 20 2f 2a 20 66 |g_ptr0;.|. /* f|
|00001340| 6c 61 67 73 20 69 6e 20 | 6c 69 73 74 20 66 69 6c |lags in |list fil|
|00001350| 65 20 74 6f 20 63 75 73 | 74 6f 6d 69 7a 65 20 68 |e to cus|tomize h|
|00001360| 61 6e 64 6c 69 6e 67 20 | 6f 66 20 61 20 71 75 65 |andling |of a que|
|00001370| 73 74 69 6f 6e 0a 20 20 | 20 20 20 69 61 64 64 5f |stion. | iadd_|
|00001380| 66 6c 61 67 20 20 20 20 | 2d 20 63 61 6e 20 75 73 |flag |- can us|
|00001390| 65 72 73 20 61 64 64 20 | 65 6e 74 72 69 65 73 20 |ers add |entries |
|000013a0| 28 30 20 3d 20 6e 6f 2c | 20 45 4c 53 45 20 3d 20 |(0 = no,| ELSE = |
|000013b0| 79 65 73 29 0a 20 20 20 | 20 20 69 76 70 6c 75 73 |yes). | ivplus|
|000013c0| 5f 66 6c 61 67 20 20 2d | 20 63 61 6e 20 75 73 65 |_flag -| can use|
|000013d0| 72 73 20 76 6f 74 65 20 | 70 6c 75 73 20 28 30 20 |rs vote |plus (0 |
|000013e0| 3d 20 6e 6f 2c 20 45 4c | 53 45 20 3d 20 79 65 73 |= no, EL|SE = yes|
|000013f0| 29 0a 20 20 20 20 20 69 | 76 6d 69 6e 75 73 5f 66 |). i|vminus_f|
|00001400| 6c 61 67 20 2d 20 63 61 | 6e 20 75 73 65 72 73 20 |lag - ca|n users |
|00001410| 76 6f 74 65 20 6d 69 6e | 75 73 20 28 30 20 3d 20 |vote min|us (0 = |
|00001420| 6e 6f 2c 20 45 4c 53 45 | 20 3d 20 79 65 73 29 0a |no, ELSE| = yes).|
|00001430| 20 20 20 20 20 69 73 6f | 72 74 5f 66 6c 61 67 20 | iso|rt_flag |
|00001440| 20 20 2d 20 73 6f 72 74 | 20 6c 69 73 74 20 62 79 | - sort| list by|
|00001450| 20 76 6f 74 65 20 63 6f | 75 6e 74 20 28 30 20 3d | vote co|unt (0 =|
|00001460| 20 6e 6f 2c 20 45 4c 53 | 45 20 3d 20 79 65 73 29 | no, ELS|E = yes)|
|00001470| 0a 20 20 20 20 20 69 64 | 63 6e 74 5f 66 6c 61 67 |. id|cnt_flag|
|00001480| 20 20 20 2d 20 64 69 73 | 70 6c 61 79 20 76 6f 74 | - dis|play vot|
|00001490| 65 20 63 6f 75 6e 74 20 | 28 30 20 3d 20 6e 6f 2c |e count |(0 = no,|
|000014a0| 20 45 4c 53 45 20 3d 20 | 79 65 73 29 0a 20 20 20 | ELSE = |yes). |
|000014b0| 2a 2f 0a 20 20 20 69 6e | 74 20 69 61 64 64 5f 66 |*/. in|t iadd_f|
|000014c0| 6c 61 67 2c 20 69 76 70 | 6c 75 73 5f 66 6c 61 67 |lag, ivp|lus_flag|
|000014d0| 2c 20 69 76 6d 69 6e 75 | 73 5f 66 6c 61 67 2c 20 |, ivminu|s_flag, |
|000014e0| 69 73 6f 72 74 5f 66 6c | 61 67 2c 20 69 64 63 6e |isort_fl|ag, idcn|
|000014f0| 74 5f 66 6c 61 67 3b 0a | 0a 69 6e 74 20 6d 61 69 |t_flag;.|.int mai|
|00001500| 6e 28 69 6e 74 20 61 72 | 67 63 2c 20 63 68 61 72 |n(int ar|gc, char|
|00001510| 20 2a 61 72 67 76 5b 5d | 29 20 7b 0a 0a 20 20 20 | *argv[]|) {.. |
|00001520| 69 6e 74 20 63 6c 2c 20 | 69 2c 20 6a 2c 20 6b 2c |int cl, |i, j, k,|
|00001530| 20 78 2c 20 6d 3d 30 2c | 20 69 76 6f 74 65 2c 20 | x, m=0,| ivote, |
|00001540| 69 74 6d 70 3b 0a 20 20 | 20 46 49 4c 45 20 2a 66 |itmp;. | FILE *f|
|00001550| 70 3b 0a 0a 20 20 20 63 | 68 61 72 20 61 63 74 69 |p;.. c|har acti|
|00001560| 6f 6e 5b 36 34 5d 2c 20 | 6c 69 73 74 5b 36 34 5d |on[64], |list[64]|
|00001570| 2c 20 66 6c 6e 61 6d 65 | 5b 32 35 36 5d 3b 20 0a |, flname|[256]; .|
|00001580| 20 20 20 63 68 61 72 20 | 2a 72 68 5f 6e 61 6d 65 | char |*rh_name|
|00001590| 2c 20 2a 72 68 5f 75 73 | 65 72 3b 0a 0a 20 20 20 |, *rh_us|er;.. |
|000015a0| 76 6f 74 65 72 6c 6f 67 | 5f 65 6e 74 72 79 20 2a |voterlog|_entry *|
|000015b0| 76 6c 6f 67 5f 70 74 72 | 31 2c 20 2a 76 6c 6f 67 |vlog_ptr|1, *vlog|
|000015c0| 5f 70 74 72 32 3b 0a 20 | 20 20 20 20 0a 20 20 20 |_ptr2;. | . |
|000015d0| 2f 2a 20 69 66 20 6e 6f | 20 61 72 67 75 6d 65 6e |/* if no| argumen|
|000015e0| 74 20 73 75 70 70 6c 69 | 65 64 2c 20 6a 75 73 74 |t suppli|ed, just|
|000015f0| 20 73 65 74 20 61 63 74 | 69 6f 6e 20 74 6f 20 64 | set act|ion to d|
|00001600| 6f 20 64 69 73 70 6c 61 | 79 20 6d 61 69 6e 20 70 |o displa|y main p|
|00001610| 61 67 65 20 2a 2f 0a 20 | 20 20 69 66 20 28 61 72 |age */. | if (ar|
|00001620| 67 63 20 3c 20 32 29 20 | 73 74 72 63 70 79 28 61 |gc < 2) |strcpy(a|
|00001630| 63 74 69 6f 6e 2c 20 22 | 64 69 73 70 6c 61 79 22 |ction, "|display"|
|00001640| 29 3b 0a 20 20 20 20 20 | 65 6c 73 65 20 73 74 72 |);. |else str|
|00001650| 63 70 79 28 61 63 74 69 | 6f 6e 2c 20 61 72 67 76 |cpy(acti|on, argv|
|00001660| 5b 31 5d 29 3b 0a 0a 20 | 20 20 67 65 74 5f 68 6f |[1]);.. | get_ho|
|00001670| 73 74 5f 69 6e 66 6f 28 | 68 61 2c 20 4d 41 58 5f |st_info(|ha, MAX_|
|00001680| 56 4f 54 45 52 5f 4c 45 | 4e 2d 31 29 3b 0a 0a 2f |VOTER_LE|N-1);../|
|00001690| 2a 20 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |* ------|--------|
|000016a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 20 44 49 |--------|----- DI|
|000016b0| 53 50 4c 41 59 20 50 41 | 47 45 20 2d 2d 2d 2d 2d |SPLAY PA|GE -----|
|000016c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000016d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 20 2a 2f 0a 20 20 |--------|-- */. |
|000016e0| 20 69 66 20 28 73 74 72 | 63 6d 70 28 61 63 74 69 | if (str|cmp(acti|
|000016f0| 6f 6e 2c 20 22 64 69 73 | 70 6c 61 79 22 29 20 3d |on, "dis|play") =|
|00001700| 3d 20 30 29 20 7b 0a 0a | 20 20 20 20 20 77 72 5f |= 0) {..| wr_|
|00001710| 6c 6f 67 28 61 63 74 69 | 6f 6e 2c 20 22 22 29 3b |log(acti|on, "");|
|00001720| 0a 0a 20 20 20 20 20 2f | 2a 20 64 69 73 70 6c 61 |.. /|* displa|
|00001730| 79 20 74 68 65 20 6d 61 | 69 6e 20 48 54 4d 4c 20 |y the ma|in HTML |
|00001740| 70 61 67 65 20 61 6e 64 | 20 65 78 69 74 20 77 69 |page and| exit wi|
|00001750| 74 68 6f 75 74 20 72 65 | 77 72 69 74 69 6e 67 20 |thout re|writing |
|00001760| 66 69 6c 65 73 20 2a 2f | 0a 20 20 20 20 20 64 69 |files */|. di|
|00001770| 73 70 5f 6d 61 69 6e 5f | 70 61 67 65 28 30 29 3b |sp_main_|page(0);|
|00001780| 20 65 78 69 74 28 30 29 | 3b 0a 0a 0a 2f 2a 20 2d | exit(0)|;.../* -|
|00001790| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000017a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 20 49 |--------|------ I|
|000017b0| 4e 49 54 20 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |NIT ----|--------|
|000017c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000017d0| 2d 2d 2d 2d 2d 2d 2d 20 | 2a 2f 0a 20 20 20 7d 20 |------- |*/. } |
|000017e0| 65 6c 73 65 20 69 66 20 | 28 73 74 72 63 6d 70 28 |else if |(strcmp(|
|000017f0| 61 63 74 69 6f 6e 2c 20 | 22 69 6e 69 74 22 29 20 |action, |"init") |
|00001800| 3d 3d 20 30 29 20 7b 0a | 0a 20 20 20 20 20 77 72 |== 0) {.|. wr|
|00001810| 5f 6c 6f 67 28 61 63 74 | 69 6f 6e 2c 20 22 22 29 |_log(act|ion, "")|
|00001820| 3b 0a 0a 20 20 20 20 69 | 66 20 28 28 66 70 20 3d |;.. i|f ((fp =|
|00001830| 20 66 6f 70 65 6e 28 43 | 46 47 5f 46 49 4c 45 2c | fopen(C|FG_FILE,|
|00001840| 20 22 72 22 29 29 20 3d | 3d 20 4e 55 4c 4c 29 0a | "r")) =|= NULL).|
|00001850| 20 20 20 20 20 20 65 72 | 72 5f 6d 73 67 28 22 45 | er|r_msg("E|
|00001860| 72 72 6f 72 20 6f 70 65 | 6e 69 6e 67 20 63 6f 6e |rror ope|ning con|
|00001870| 66 69 67 75 72 61 74 69 | 6f 6e 20 66 69 6c 65 20 |figurati|on file |
|00001880| 66 6f 72 20 72 65 61 64 | 69 6e 67 3a 20 22 2c 20 |for read|ing: ", |
|00001890| 43 46 47 5f 46 49 4c 45 | 29 3b 0a 0a 20 20 20 20 |CFG_FILE|);.. |
|000018a0| 66 73 63 61 6e 66 28 66 | 70 2c 20 22 25 64 5c 6e |fscanf(f|p, "%d\n|
|000018b0| 22 2c 20 26 6e 71 75 65 | 73 74 29 3b 0a 20 20 20 |", &nque|st);. |
|000018c0| 20 69 66 20 28 6e 71 75 | 65 73 74 20 3c 20 31 29 | if (nqu|est < 1)|
|000018d0| 20 65 72 72 5f 6d 73 67 | 28 22 49 6e 76 61 6c 69 | err_msg|("Invali|
|000018e0| 64 20 6e 75 6d 62 65 72 | 20 6f 66 20 70 6f 6c 6c |d number| of poll|
|000018f0| 73 20 69 6e 20 63 6f 6e | 66 69 67 20 66 69 6c 65 |s in con|fig file|
|00001900| 2e 22 2c 20 22 22 29 3b | 0a 0a 20 20 20 20 66 6f |.", "");|.. fo|
|00001910| 72 20 28 69 20 3d 20 30 | 3b 20 69 20 3c 20 6e 71 |r (i = 0|; i < nq|
|00001920| 75 65 73 74 3b 20 69 2b | 2b 29 20 7b 0a 0a 20 20 |uest; i+|+) {.. |
|00001930| 20 20 20 20 66 67 65 74 | 73 28 6c 69 73 74 2c 20 | fget|s(list, |
|00001940| 42 55 46 5f 4c 45 4e 2c | 20 66 70 29 3b 20 73 74 |BUF_LEN,| fp); st|
|00001950| 72 69 70 5f 65 6e 64 5f | 63 72 28 6c 69 73 74 29 |rip_end_|cr(list)|
|00001960| 3b 0a 20 20 20 20 20 20 | 69 66 20 28 66 65 72 72 |;. |if (ferr|
|00001970| 6f 72 28 66 70 29 29 20 | 65 72 72 5f 6d 73 67 28 |or(fp)) |err_msg(|
|00001980| 22 45 72 72 6f 72 20 72 | 65 61 64 69 6e 67 20 63 |"Error r|eading c|
|00001990| 6f 6e 66 69 67 20 66 69 | 6c 65 3a 20 22 2c 20 43 |onfig fi|le: ", C|
|000019a0| 46 47 5f 46 49 4c 45 29 | 3b 0a 0a 20 20 20 20 20 |FG_FILE)|;.. |
|000019b0| 20 2f 2a 20 6c 6f 61 64 | 20 74 68 65 20 6c 69 73 | /* load| the lis|
|000019c0| 74 20 69 6e 66 6f 20 2a | 2f 0a 20 20 20 20 20 20 |t info *|/. |
|000019d0| 6c 6f 61 64 5f 6c 69 73 | 74 28 6c 69 73 74 29 3b |load_lis|t(list);|
|000019e0| 0a 20 20 20 20 20 20 20 | 20 20 20 20 20 0a 20 20 |. | . |
|000019f0| 20 20 20 20 2f 2a 20 77 | 72 69 74 65 20 74 68 65 | /* w|rite the|
|00001a00| 20 48 54 4d 4c 20 69 6e | 63 6c 75 64 65 20 66 69 | HTML in|clude fi|
|00001a10| 6c 65 20 2a 2f 0a 20 20 | 20 20 20 20 77 72 5f 68 |le */. | wr_h|
|00001a20| 74 69 6e 63 5f 66 69 6c | 65 28 6c 69 73 74 29 3b |tinc_fil|e(list);|
|00001a30| 0a 0a 20 20 20 20 7d 0a | 0a 20 20 20 20 66 63 6c |.. }.|. fcl|
|00001a40| 6f 73 65 28 66 70 29 3b | 0a 0a 20 20 20 20 2f 2a |ose(fp);|.. /*|
|00001a50| 20 64 69 73 70 6c 61 79 | 20 70 61 67 65 20 61 6e | display| page an|
|00001a60| 64 20 65 78 69 74 2c 20 | 64 6f 6e 27 74 20 6e 65 |d exit, |don't ne|
|00001a70| 65 64 20 74 6f 20 72 65 | 77 72 69 74 65 20 74 68 |ed to re|write th|
|00001a80| 65 20 6c 69 73 74 20 66 | 69 6c 65 73 20 2a 2f 0a |e list f|iles */.|
|00001a90| 20 20 20 20 64 69 73 70 | 5f 6d 61 69 6e 5f 70 61 | disp|_main_pa|
|00001aa0| 67 65 28 30 29 3b 20 65 | 78 69 74 28 30 29 3b 0a |ge(0); e|xit(0);.|
|00001ab0| 0a 2f 2a 20 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |./* ----|--------|
|00001ac0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 20 41 44 |--------|----- AD|
|00001ad0| 44 20 45 4e 54 52 59 20 | 4f 52 20 56 4f 54 45 20 |D ENTRY |OR VOTE |
|00001ae0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001af0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 20 2a 2f 0a |--------|---- */.|
|00001b00| 20 20 20 7d 20 65 6c 73 | 65 20 69 66 20 28 28 73 | } els|e if ((s|
|00001b10| 74 72 63 6d 70 28 61 63 | 74 69 6f 6e 2c 20 22 76 |trcmp(ac|tion, "v|
|00001b20| 70 6c 75 73 22 29 20 3d | 3d 20 30 29 20 20 7c 7c |plus") =|= 0) |||
|00001b30| 20 28 73 74 72 63 6d 70 | 28 61 63 74 69 6f 6e 2c | (strcmp|(action,|
|00001b40| 20 22 76 6d 69 6e 75 73 | 22 29 20 3d 3d 20 30 29 | "vminus|") == 0)|
|00001b50| 0a 20 20 20 20 20 7c 7c | 20 28 73 74 72 63 6d 70 |. ||| (strcmp|
|00001b60| 28 61 63 74 69 6f 6e 2c | 20 22 70 72 6f 63 6e 65 |(action,| "procne|
|00001b70| 77 22 29 20 3d 3d 20 30 | 29 20 7c 7c 20 28 73 74 |w") == 0|) || (st|
|00001b80| 72 63 6d 70 28 61 63 74 | 69 6f 6e 2c 20 22 61 64 |rcmp(act|ion, "ad|
|00001b90| 64 22 29 20 3d 3d 20 30 | 29 29 20 7b 0a 0a 20 20 |d") == 0|)) {.. |
|00001ba0| 20 20 20 2f 2a 20 72 65 | 71 75 69 72 65 73 20 33 | /* re|quires 3|
|00001bb0| 20 61 72 67 75 6d 65 6e | 74 73 2c 20 6f 74 68 65 | argumen|ts, othe|
|00001bc0| 72 77 69 73 65 20 64 69 | 73 70 6c 61 79 20 70 61 |rwise di|splay pa|
|00001bd0| 67 65 20 77 69 74 68 20 | 65 72 72 6f 72 20 6d 73 |ge with |error ms|
|00001be0| 67 20 2a 2f 0a 20 20 20 | 20 20 69 66 20 28 61 72 |g */. | if (ar|
|00001bf0| 67 63 20 21 3d 20 34 29 | 20 7b 20 64 69 73 70 5f |gc != 4)| { disp_|
|00001c00| 6d 61 69 6e 5f 70 61 67 | 65 28 31 29 3b 20 65 78 |main_pag|e(1); ex|
|00001c10| 69 74 28 30 29 3b 20 7d | 0a 0a 20 20 20 20 20 2f |it(0); }|.. /|
|00001c20| 2a 20 6e 6f 77 20 67 65 | 74 20 74 68 65 20 6c 69 |* now ge|t the li|
|00001c30| 73 74 20 6e 61 6d 65 20 | 28 64 6f 75 62 6c 65 73 |st name |(doubles|
|00001c40| 20 61 73 20 66 69 6c 65 | 20 6e 61 6d 65 29 20 2a | as file| name) *|
|00001c50| 2f 0a 20 20 20 20 20 73 | 74 72 63 70 79 28 6c 69 |/. s|trcpy(li|
|00001c60| 73 74 2c 20 61 72 67 76 | 5b 32 5d 29 3b 0a 0a 20 |st, argv|[2]);.. |
|00001c70| 20 20 20 20 2f 2a 20 6c | 6f 61 64 20 74 68 65 20 | /* l|oad the |
|00001c80| 6c 69 73 74 20 69 6e 66 | 6f 20 2a 2f 0a 20 20 20 |list inf|o */. |
|00001c90| 20 20 6c 6f 61 64 5f 6c | 69 73 74 28 6c 69 73 74 | load_l|ist(list|
|00001ca0| 29 3b 0a 0a 20 20 20 20 | 20 2f 2a 20 2d 2d 2d 2d |);.. | /* ----|
|00001cb0| 20 76 6f 74 69 6e 67 2c | 20 69 6e 63 72 65 6d 65 | voting,| increme|
|00001cc0| 6e 74 20 6f 72 20 64 65 | 63 72 65 6d 65 6e 74 20 |nt or de|crement |
|00001cd0| 74 68 65 20 69 74 65 6d | 27 73 20 6e 75 6d 62 65 |the item|'s numbe|
|00001ce0| 72 20 76 6f 74 65 73 20 | 2d 2d 2d 2d 20 2a 2f 0a |r votes |---- */.|
|00001cf0| 20 20 20 20 20 69 66 20 | 28 28 73 74 72 63 6d 70 | if |((strcmp|
|00001d00| 28 61 63 74 69 6f 6e 2c | 22 76 70 6c 75 73 22 29 |(action,|"vplus")|
|00001d10| 20 3d 3d 20 30 29 20 7c | 7c 20 28 73 74 72 63 6d | == 0) ||| (strcm|
|00001d20| 70 28 61 63 74 69 6f 6e | 2c 22 76 6d 69 6e 75 73 |p(action|,"vminus|
|00001d30| 22 29 20 3d 3d 20 30 29 | 29 20 7b 0a 0a 20 20 20 |") == 0)|) {.. |
|00001d40| 20 20 20 20 2f 2a 20 63 | 68 65 63 6b 20 66 6f 72 | /* c|heck for|
|00001d50| 20 70 65 6f 70 6c 65 20 | 67 75 65 73 73 69 6e 67 | people |guessing|
|00001d60| 20 6f 70 74 69 6f 6e 73 | 20 74 68 61 74 20 61 72 | options| that ar|
|00001d70| 65 6e 27 74 20 61 6c 6c | 6f 77 65 64 20 2a 2f 0a |en't all|owed */.|
|00001d80| 20 20 20 20 20 20 20 69 | 66 20 28 28 73 74 72 63 | i|f ((strc|
|00001d90| 6d 70 28 61 63 74 69 6f | 6e 2c 22 76 70 6c 75 73 |mp(actio|n,"vplus|
|00001da0| 22 29 20 3d 3d 20 30 29 | 20 26 26 20 28 69 76 70 |") == 0)| && (ivp|
|00001db0| 6c 75 73 5f 66 6c 61 67 | 20 3d 3d 20 30 29 29 0a |lus_flag| == 0)).|
|00001dc0| 20 20 20 20 20 20 20 20 | 20 62 61 64 5f 6f 70 74 | | bad_opt|
|00001dd0| 69 6f 6e 5f 66 6f 72 5f | 71 75 65 73 74 69 6f 6e |ion_for_|question|
|00001de0| 28 29 3b 0a 20 20 20 20 | 20 20 20 69 66 20 28 28 |();. | if ((|
|00001df0| 73 74 72 63 6d 70 28 61 | 63 74 69 6f 6e 2c 22 76 |strcmp(a|ction,"v|
|00001e00| 6d 69 6e 75 73 22 29 20 | 3d 3d 20 30 29 20 26 26 |minus") |== 0) &&|
|00001e10| 20 28 69 76 6d 69 6e 75 | 73 5f 66 6c 61 67 20 3d | (ivminu|s_flag =|
|00001e20| 3d 20 30 29 29 0a 20 20 | 20 20 20 20 20 20 20 62 |= 0)). | b|
|00001e30| 61 64 5f 6f 70 74 69 6f | 6e 5f 66 6f 72 5f 71 75 |ad_optio|n_for_qu|
|00001e40| 65 73 74 69 6f 6e 28 29 | 3b 0a 0a 20 20 20 20 20 |estion()|;.. |
|00001e50| 20 20 69 76 6f 74 65 20 | 3d 20 61 74 6f 69 28 61 | ivote |= atoi(a|
|00001e60| 72 67 76 5b 33 5d 29 3b | 20 20 20 20 20 20 20 20 |rgv[3]);| |
|00001e70| 20 20 20 20 20 20 20 20 | 20 20 2f 2a 20 77 68 69 | | /* whi|
|00001e80| 63 68 20 69 74 65 6d 20 | 2a 2f 0a 0a 20 20 20 20 |ch item |*/.. |
|00001e90| 20 20 20 2f 2a 20 62 61 | 64 20 69 74 65 6d 20 6e | /* ba|d item n|
|00001ea0| 75 6d 62 65 72 20 69 73 | 20 70 72 6f 62 61 62 6c |umber is| probabl|
|00001eb0| 79 20 61 20 55 52 4c 20 | 66 72 6f 6d 20 61 6e 20 |y a URL |from an |
|00001ec0| 6f 6c 64 20 70 6f 6c 6c | 20 2a 2f 0a 20 20 20 20 |old poll| */. |
|00001ed0| 20 20 20 69 66 20 28 28 | 69 76 6f 74 65 20 3c 20 | if ((|ivote < |
|00001ee0| 30 29 20 7c 7c 20 28 69 | 76 6f 74 65 20 3e 20 6e |0) || (i|vote > n|
|00001ef0| 69 74 65 6d 73 2d 31 29 | 29 20 7b 20 64 69 73 70 |items-1)|) { disp|
|00001f00| 5f 6d 61 69 6e 5f 70 61 | 67 65 28 31 29 3b 20 65 |_main_pa|ge(1); e|
|00001f10| 78 69 74 28 30 29 3b 20 | 7d 0a 0a 20 20 20 20 20 |xit(0); |}.. |
|00001f20| 20 20 2f 2a 20 73 65 65 | 20 69 66 20 74 68 65 20 | /* see| if the |
|00001f30| 63 75 72 72 65 6e 74 20 | 70 65 72 73 6f 6e 20 69 |current |person i|
|00001f40| 73 20 6f 6e 20 74 68 65 | 20 6c 69 73 74 20 6f 66 |s on the| list of|
|00001f50| 20 6c 61 73 74 20 76 6f | 74 65 72 73 20 2a 2f 0a | last vo|ters */.|
|00001f60| 20 20 20 20 20 20 20 66 | 6f 72 20 28 76 6c 6f 67 | f|or (vlog|
|00001f70| 5f 70 74 72 31 3d 76 6c | 6f 67 5f 70 74 72 30 2c |_ptr1=vl|og_ptr0,|
|00001f80| 20 69 3d 30 3b 20 69 20 | 3c 20 6e 75 6d 76 6f 74 | i=0; i |< numvot|
|00001f90| 65 72 6c 6f 67 3b 20 69 | 2b 2b 29 20 7b 0a 20 20 |erlog; i|++) {. |
|00001fa0| 20 20 20 20 20 20 20 69 | 66 20 28 73 74 72 63 6d | i|f (strcm|
|00001fb0| 70 28 68 61 2c 20 28 63 | 68 61 72 20 2a 29 20 76 |p(ha, (c|har *) v|
|00001fc0| 6c 6f 67 5f 70 74 72 31 | 29 20 3d 3d 20 30 29 20 |log_ptr1|) == 0) |
|00001fd0| 6e 6f 76 6f 74 65 66 6c | 61 67 20 3d 20 31 3b 0a |novotefl|ag = 1;.|
|00001fe0| 20 20 20 20 20 20 20 20 | 20 76 6c 6f 67 5f 70 74 | | vlog_pt|
|00001ff0| 72 31 2b 2b 3b 0a 20 20 | 20 20 20 20 20 7d 20 20 |r1++;. | } |
|00002000| 20 20 20 20 20 0a 0a 20 | 20 20 20 20 20 20 69 66 | .. | if|
|00002010| 20 28 6e 6f 76 6f 74 65 | 66 6c 61 67 20 3d 3d 20 | (novote|flag == |
|00002020| 30 29 20 7b 0a 0a 20 20 | 20 20 20 20 20 20 20 77 |0) {.. | w|
|00002030| 72 5f 6c 6f 67 28 61 63 | 74 69 6f 6e 2c 20 62 6c |r_log(ac|tion, bl|
|00002040| 69 73 74 5b 69 76 6f 74 | 65 5d 2e 6e 61 6d 65 29 |ist[ivot|e].name)|
|00002050| 3b 0a 0a 20 20 20 20 20 | 20 20 20 20 2f 2a 20 73 |;.. | /* s|
|00002060| 68 69 66 74 20 6c 69 73 | 74 20 64 6f 77 6e 20 61 |hift lis|t down a|
|00002070| 6e 64 20 61 64 64 20 6c | 61 74 65 73 74 20 74 6f |nd add l|atest to|
|00002080| 20 74 68 65 20 65 6e 64 | 20 6f 66 20 74 68 65 20 | the end| of the |
|00002090| 6c 69 73 74 20 2a 2f 0a | 20 20 20 20 20 20 20 20 |list */.| |
|000020a0| 20 76 6c 6f 67 5f 70 74 | 72 31 20 3d 20 76 6c 6f | vlog_pt|r1 = vlo|
|000020b0| 67 5f 70 74 72 32 20 3d | 20 76 6c 6f 67 5f 70 74 |g_ptr2 =| vlog_pt|
|000020c0| 72 30 3b 20 0a 20 20 20 | 20 20 20 20 20 20 76 6c |r0; . | vl|
|000020d0| 6f 67 5f 70 74 72 32 2b | 2b 3b 0a 20 20 20 20 20 |og_ptr2+|+;. |
|000020e0| 20 20 20 20 66 6f 72 20 | 28 69 3d 30 3b 20 69 20 | for |(i=0; i |
|000020f0| 3c 20 6e 75 6d 76 6f 74 | 65 72 6c 6f 67 2d 31 3b |< numvot|erlog-1;|
|00002100| 20 69 2b 2b 29 20 7b 0a | 20 20 20 20 20 20 20 20 | i++) {.| |
|00002110| 20 20 20 73 74 72 63 70 | 79 28 28 63 68 61 72 20 | strcp|y((char |
|00002120| 2a 29 20 76 6c 6f 67 5f | 70 74 72 31 2c 20 28 63 |*) vlog_|ptr1, (c|
|00002130| 68 61 72 20 2a 29 20 76 | 6c 6f 67 5f 70 74 72 32 |har *) v|log_ptr2|
|00002140| 29 3b 20 0a 20 20 20 20 | 20 20 20 20 20 20 20 76 |); . | v|
|00002150| 6c 6f 67 5f 70 74 72 31 | 2b 2b 3b 20 76 6c 6f 67 |log_ptr1|++; vlog|
|00002160| 5f 70 74 72 32 2b 2b 3b | 0a 20 20 20 20 20 20 20 |_ptr2++;|. |
|00002170| 20 20 7d 0a 20 20 20 20 | 20 20 20 20 20 73 74 72 | }. | str|
|00002180| 63 70 79 28 28 63 68 61 | 72 20 2a 29 20 76 6c 6f |cpy((cha|r *) vlo|
|00002190| 67 5f 70 74 72 31 2c 20 | 68 61 29 3b 0a 0a 20 20 |g_ptr1, |ha);.. |
|000021a0| 20 20 20 20 20 20 20 2f | 2a 20 73 61 76 65 20 69 | /|* save i|
|000021b0| 6e 20 74 68 65 20 6c 61 | 73 74 20 76 6f 74 65 72 |n the la|st voter|
|000021c0| 20 73 74 72 69 6e 67 20 | 76 61 72 69 61 62 6c 65 | string |variable|
|000021d0| 20 66 6f 72 20 62 65 6c | 6f 77 20 2a 2f 0a 20 20 | for bel|ow */. |
|000021e0| 20 20 20 20 20 20 20 73 | 74 72 63 70 79 28 6c 61 | s|trcpy(la|
|000021f0| 73 74 76 6f 74 65 72 2c | 20 68 61 29 3b 0a 20 20 |stvoter,| ha);. |
|00002200| 0a 20 20 20 20 20 20 20 | 20 20 74 6f 74 61 6c 6e |. | totaln|
|00002210| 75 6d 76 6f 74 65 73 2b | 2b 3b 0a 0a 20 20 20 20 |umvotes+|+;.. |
|00002220| 20 20 20 20 20 2f 2a 20 | 69 6e 63 72 65 6d 65 6e | /* |incremen|
|00002230| 74 20 6f 72 20 64 65 63 | 72 65 6d 65 6e 74 20 74 |t or dec|rement t|
|00002240| 68 65 20 69 74 65 6d 73 | 20 76 6f 74 65 20 63 6f |he items| vote co|
|00002250| 75 6e 74 20 2a 2f 0a 20 | 20 20 20 20 20 20 20 20 |unt */. | |
|00002260| 69 66 20 28 73 74 72 63 | 6d 70 28 61 63 74 69 6f |if (strc|mp(actio|
|00002270| 6e 2c 20 22 76 70 6c 75 | 73 22 29 20 3d 3d 20 30 |n, "vplu|s") == 0|
|00002280| 29 20 2b 2b 62 6c 69 73 | 74 5b 69 76 6f 74 65 5d |) ++blis|t[ivote]|
|00002290| 2e 6e 76 6f 74 65 73 3b | 0a 20 20 20 20 20 20 20 |.nvotes;|. |
|000022a0| 20 20 20 20 65 6c 73 65 | 20 2d 2d 62 6c 69 73 74 | else| --blist|
|000022b0| 5b 69 76 6f 74 65 5d 2e | 6e 76 6f 74 65 73 3b 0a |[ivote].|nvotes;.|
|000022c0| 0a 20 20 20 20 20 20 20 | 7d 20 65 6c 73 65 20 77 |. |} else w|
|000022d0| 72 5f 6c 6f 67 28 61 63 | 74 69 6f 6e 2c 20 22 45 |r_log(ac|tion, "E|
|000022e0| 72 72 6f 72 3a 20 41 6c | 72 65 61 64 79 20 56 6f |rror: Al|ready Vo|
|000022f0| 74 65 64 21 22 29 3b 0a | 0a 20 20 20 20 20 2f 2a |ted!");.|. /*|
|00002300| 20 2d 2d 2d 2d 20 64 69 | 73 70 6c 61 79 20 66 6f | ---- di|splay fo|
|00002310| 72 6d 20 66 6f 72 20 61 | 64 64 69 6e 67 20 61 6e |rm for a|dding an|
|00002320| 20 65 6e 74 72 79 20 2d | 2d 2d 2d 20 2a 2f 0a 20 | entry -|--- */. |
|00002330| 20 20 20 20 7d 20 65 6c | 73 65 20 69 66 20 28 73 | } el|se if (s|
|00002340| 74 72 63 6d 70 28 61 63 | 74 69 6f 6e 2c 20 22 61 |trcmp(ac|tion, "a|
|00002350| 64 64 22 29 20 3d 3d 20 | 30 29 20 7b 0a 0a 20 20 |dd") == |0) {.. |
|00002360| 20 20 20 20 20 77 72 5f | 6c 6f 67 28 61 63 74 69 | wr_|log(acti|
|00002370| 6f 6e 2c 20 6c 69 73 74 | 29 3b 0a 0a 20 20 20 20 |on, list|);.. |
|00002380| 20 20 20 2f 2a 20 63 68 | 65 63 6b 20 66 6f 72 20 | /* ch|eck for |
|00002390| 70 65 6f 70 6c 65 20 67 | 75 65 73 73 69 6e 67 20 |people g|uessing |
|000023a0| 6f 70 74 69 6f 6e 73 20 | 74 68 61 74 20 61 72 65 |options |that are|
|000023b0| 6e 27 74 20 61 6c 6c 6f | 77 65 64 20 2a 2f 0a 20 |n't allo|wed */. |
|000023c0| 20 20 20 20 20 20 69 66 | 20 28 69 61 64 64 5f 66 | if| (iadd_f|
|000023d0| 6c 61 67 20 3d 3d 20 30 | 29 20 62 61 64 5f 6f 70 |lag == 0|) bad_op|
|000023e0| 74 69 6f 6e 5f 66 6f 72 | 5f 71 75 65 73 74 69 6f |tion_for|_questio|
|000023f0| 6e 28 29 3b 0a 0a 20 20 | 20 20 20 20 20 2f 2a 20 |n();.. | /* |
|00002400| 69 66 20 74 68 65 72 65 | 20 61 72 65 20 61 6c 72 |if there| are alr|
|00002410| 65 61 64 79 20 74 6f 6f | 20 6d 61 6e 79 20 69 74 |eady too| many it|
|00002420| 65 6d 73 2c 20 64 6f 6e | 27 74 20 6c 65 74 20 74 |ems, don|'t let t|
|00002430| 68 65 6d 20 61 64 64 20 | 2a 2f 0a 20 20 20 20 20 |hem add |*/. |
|00002440| 20 20 69 66 20 28 6e 69 | 74 65 6d 73 20 3e 3d 20 | if (ni|tems >= |
|00002450| 4d 41 58 5f 49 54 45 4d | 53 29 20 74 6f 6f 5f 6d |MAX_ITEM|S) too_m|
|00002460| 61 6e 79 5f 69 74 65 6d | 73 28 22 22 29 3b 0a 20 |any_item|s("");. |
|00002470| 20 20 20 20 20 0a 20 20 | 20 20 20 20 20 2f 2a 20 | . | /* |
|00002480| 62 75 69 6c 64 20 68 74 | 6d 6c 20 66 6f 72 6d 20 |build ht|ml form |
|00002490| 74 6f 20 69 6e 70 75 74 | 20 74 68 65 20 6e 65 77 |to input| the new|
|000024a0| 20 65 6e 74 72 79 20 2a | 2f 0a 20 20 20 20 20 20 | entry *|/. |
|000024b0| 20 61 64 64 5f 65 6e 74 | 72 79 5f 70 61 67 65 28 | add_ent|ry_page(|
|000024c0| 6c 69 73 74 29 3b 20 0a | 0a 20 20 20 20 20 20 20 |list); .|. |
|000024d0| 2f 2a 20 65 78 69 74 20 | 6e 6f 77 2c 20 77 65 20 |/* exit |now, we |
|000024e0| 64 6f 6e 27 74 20 6e 65 | 65 64 20 74 6f 20 72 65 |don't ne|ed to re|
|000024f0| 77 72 69 74 65 20 61 6e | 79 20 6f 66 20 74 68 65 |write an|y of the|
|00002500| 20 66 69 6c 65 73 20 2a | 2f 20 0a 20 20 20 20 20 | files *|/ . |
|00002510| 20 20 65 78 69 74 28 30 | 29 3b 0a 0a 20 20 20 20 | exit(0|);.. |
|00002520| 20 2f 2a 20 2d 2d 2d 2d | 20 61 64 64 20 74 68 65 | /* ----| add the|
|00002530| 20 65 6e 74 72 79 20 74 | 68 65 79 20 74 79 70 65 | entry t|hey type|
|00002540| 64 20 69 6e 20 74 6f 20 | 74 68 65 20 61 70 70 72 |d in to |the appr|
|00002550| 6f 70 72 69 61 74 65 20 | 6c 69 73 74 20 2d 2d 2d |opriate |list ---|
|00002560| 2d 20 2a 2f 0a 20 20 20 | 20 20 7d 20 65 6c 73 65 |- */. | } else|
|00002570| 20 69 66 20 28 73 74 72 | 63 6d 70 28 61 63 74 69 | if (str|cmp(acti|
|00002580| 6f 6e 2c 20 22 70 72 6f | 63 6e 65 77 22 29 20 3d |on, "pro|cnew") =|
|00002590| 3d 20 30 29 20 7b 0a 0a | 20 20 20 20 20 20 20 2f |= 0) {..| /|
|000025a0| 2a 20 63 68 65 63 6b 20 | 66 6f 72 20 70 65 6f 70 |* check |for peop|
|000025b0| 6c 65 20 67 75 65 73 73 | 69 6e 67 20 6f 70 74 69 |le guess|ing opti|
|000025c0| 6f 6e 73 20 74 68 61 74 | 20 61 72 65 6e 27 74 20 |ons that| aren't |
|000025d0| 61 6c 6c 6f 77 65 64 20 | 2a 2f 0a 20 20 20 20 20 |allowed |*/. |
|000025e0| 20 20 69 66 20 28 69 61 | 64 64 5f 66 6c 61 67 20 | if (ia|dd_flag |
|000025f0| 3d 3d 20 30 29 20 62 61 | 64 5f 6f 70 74 69 6f 6e |== 0) ba|d_option|
|00002600| 5f 66 6f 72 5f 71 75 65 | 73 74 69 6f 6e 28 29 3b |_for_que|stion();|
|00002610| 0a 0a 20 20 20 20 20 20 | 20 6d 20 3d 20 2d 31 3b |.. | m = -1;|
|00002620| 0a 0a 20 20 20 20 20 20 | 20 69 66 20 28 67 65 74 |.. | if (get|
|00002630| 65 6e 76 28 22 43 4f 4e | 54 45 4e 54 5f 4c 45 4e |env("CON|TENT_LEN|
|00002640| 47 54 48 22 29 20 3d 3d | 20 4e 55 4c 4c 29 20 7b |GTH") ==| NULL) {|
|00002650| 0a 20 20 20 20 20 20 20 | 20 20 64 69 73 70 5f 6d |. | disp_m|
|00002660| 61 69 6e 5f 70 61 67 65 | 28 31 29 3b 0a 20 20 20 |ain_page|(1);. |
|00002670| 20 20 20 20 20 20 65 78 | 69 74 28 30 29 3b 0a 20 | ex|it(0);. |
|00002680| 20 20 20 20 20 20 7d 20 | 65 6c 73 65 20 7b 0a 20 | } |else {. |
|00002690| 20 20 20 20 20 20 20 20 | 63 6c 20 3d 20 61 74 6f | |cl = ato|
|000026a0| 69 28 67 65 74 65 6e 76 | 28 22 43 4f 4e 54 45 4e |i(getenv|("CONTEN|
|000026b0| 54 5f 4c 45 4e 47 54 48 | 22 29 29 3b 0a 20 20 20 |T_LENGTH|"));. |
|000026c0| 20 20 20 20 20 20 66 6f | 72 20 28 78 3d 30 3b 20 | fo|r (x=0; |
|000026d0| 63 6c 20 26 26 20 28 21 | 66 65 6f 66 28 73 74 64 |cl && (!|feof(std|
|000026e0| 69 6e 29 29 3b 78 2b 2b | 29 20 7b 0a 20 20 20 20 |in));x++|) {. |
|000026f0| 20 20 20 20 20 20 20 6d | 3d 78 3b 0a 20 20 20 20 | m|=x;. |
|00002700| 20 20 20 20 20 20 20 65 | 6e 74 72 69 65 73 5b 78 | e|ntries[x|
|00002710| 5d 2e 76 61 6c 20 3d 20 | 66 6d 61 6b 65 77 6f 72 |].val = |fmakewor|
|00002720| 64 28 73 74 64 69 6e 2c | 27 26 27 2c 26 63 6c 29 |d(stdin,|'&',&cl)|
|00002730| 3b 0a 20 20 20 20 20 20 | 20 20 20 20 20 70 6c 75 |;. | plu|
|00002740| 73 5f 74 6f 5f 73 70 61 | 63 65 28 65 6e 74 72 69 |s_to_spa|ce(entri|
|00002750| 65 73 5b 78 5d 2e 76 61 | 6c 29 3b 0a 20 20 20 20 |es[x].va|l);. |
|00002760| 20 20 20 20 20 20 20 75 | 6e 65 73 63 61 70 65 5f | u|nescape_|
|00002770| 75 72 6c 28 65 6e 74 72 | 69 65 73 5b 78 5d 2e 76 |url(entr|ies[x].v|
|00002780| 61 6c 29 3b 0a 20 20 20 | 20 20 20 20 20 20 20 20 |al);. | |
|00002790| 65 6e 74 72 69 65 73 5b | 78 5d 2e 6e 61 6d 65 20 |entries[|x].name |
|000027a0| 3d 20 6d 61 6b 65 77 6f | 72 64 28 65 6e 74 72 69 |= makewo|rd(entri|
|000027b0| 65 73 5b 78 5d 2e 76 61 | 6c 2c 27 3d 27 29 3b 0a |es[x].va|l,'=');.|
|000027c0| 20 20 20 20 20 20 20 20 | 20 20 20 73 74 72 69 70 | | strip|
|000027d0| 5f 77 68 69 74 65 28 65 | 6e 74 72 69 65 73 5b 30 |_white(e|ntries[0|
|000027e0| 5d 2e 6e 61 6d 65 29 3b | 0a 20 20 20 20 20 20 20 |].name);|. |
|000027f0| 20 20 20 20 73 74 72 69 | 70 5f 77 68 69 74 65 28 | stri|p_white(|
|00002800| 65 6e 74 72 69 65 73 5b | 30 5d 2e 76 61 6c 29 3b |entries[|0].val);|
|00002810| 0a 20 20 20 20 20 20 20 | 20 20 7d 0a 20 20 20 20 |. | }. |
|00002820| 20 20 20 7d 0a 0a 20 20 | 20 20 20 20 20 2f 2a 20 | }.. | /* |
|00002830| 6e 6f 20 66 6f 72 6d 73 | 20 70 72 6f 62 61 62 6c |no forms| probabl|
|00002840| 79 20 6d 65 61 6e 73 20 | 72 65 6c 6f 61 64 69 6e |y means |reloadin|
|00002850| 67 20 61 66 74 65 72 20 | 61 64 64 2c 20 64 69 73 |g after |add, dis|
|00002860| 70 6c 61 79 20 70 61 67 | 65 20 2a 2f 0a 20 20 20 |play pag|e */. |
|00002870| 20 20 20 20 69 66 20 28 | 6d 20 3d 3d 20 2d 31 29 | if (|m == -1)|
|00002880| 20 7b 20 64 69 73 70 5f | 6d 61 69 6e 5f 70 61 67 | { disp_|main_pag|
|00002890| 65 28 31 29 3b 20 65 78 | 69 74 28 30 29 3b 20 7d |e(1); ex|it(0); }|
|000028a0| 0a 0a 20 20 20 20 20 20 | 20 2f 2a 20 64 69 64 20 |.. | /* did |
|000028b0| 62 72 6f 77 73 65 72 20 | 72 65 74 75 72 6e 20 6f |browser |return o|
|000028c0| 6e 65 20 65 6e 74 72 79 | 20 77 69 74 68 20 63 6f |ne entry| with co|
|000028d0| 72 72 65 63 74 20 6e 61 | 6d 65 20 2a 2f 0a 20 20 |rrect na|me */. |
|000028e0| 20 20 20 20 20 69 66 20 | 28 28 6d 20 21 3d 20 30 | if |((m != 0|
|000028f0| 29 20 7c 7c 20 28 73 74 | 72 63 6d 70 28 65 6e 74 |) || (st|rcmp(ent|
|00002900| 72 69 65 73 5b 30 5d 2e | 6e 61 6d 65 2c 20 22 69 |ries[0].|name, "i|
|00002910| 74 65 6d 22 29 20 21 3d | 20 30 29 29 0a 20 20 20 |tem") !=| 0)). |
|00002920| 20 20 20 20 20 20 20 62 | 61 64 5f 66 6f 72 6d 5f | b|ad_form_|
|00002930| 72 65 73 28 29 3b 0a 0a | 20 20 20 20 20 20 20 77 |res();..| w|
|00002940| 72 5f 6c 6f 67 28 6c 69 | 73 74 2c 20 65 6e 74 72 |r_log(li|st, entr|
|00002950| 69 65 73 5b 30 5d 2e 76 | 61 6c 29 3b 0a 0a 20 20 |ies[0].v|al);.. |
|00002960| 20 20 20 20 20 69 66 20 | 28 73 74 72 70 62 72 6b | if |(strpbrk|
|00002970| 28 65 6e 74 72 69 65 73 | 5b 30 5d 2e 76 61 6c 2c |(entries|[0].val,|
|00002980| 20 22 3c 3e 26 22 29 29 | 20 69 6e 70 75 74 5f 65 | "<>&"))| input_e|
|00002990| 72 72 28 31 29 3b 0a 20 | 20 20 20 20 20 20 69 66 |rr(1);. | if|
|000029a0| 20 28 73 74 72 70 62 72 | 6b 28 65 6e 74 72 69 65 | (strpbr|k(entrie|
|000029b0| 73 5b 30 5d 2e 76 61 6c | 2c 20 22 5c 62 5c 66 5c |s[0].val|, "\b\f\|
|000029c0| 6e 5c 72 5c 76 22 29 29 | 20 69 6e 70 75 74 5f 65 |n\r\v"))| input_e|
|000029d0| 72 72 28 32 29 3b 0a 20 | 20 20 20 20 20 20 69 66 |rr(2);. | if|
|000029e0| 20 28 73 74 72 70 62 72 | 6b 28 65 6e 74 72 69 65 | (strpbr|k(entrie|
|000029f0| 73 5b 30 5d 2e 76 61 6c | 2c 20 22 5c 22 22 29 29 |s[0].val|, "\""))|
|00002a00| 20 69 6e 70 75 74 5f 65 | 72 72 28 33 29 3b 0a 20 | input_e|rr(3);. |
|00002a10| 20 20 20 20 20 20 69 66 | 20 28 73 74 72 6c 65 6e | if| (strlen|
|00002a20| 28 65 6e 74 72 69 65 73 | 5b 30 5d 2e 76 61 6c 29 |(entries|[0].val)|
|00002a30| 20 3d 3d 20 30 29 20 69 | 6e 70 75 74 5f 65 72 72 | == 0) i|nput_err|
|00002a40| 28 34 29 3b 0a 0a 20 20 | 20 20 20 20 20 66 6f 72 |(4);.. | for|
|00002a50| 20 28 69 20 3d 20 30 3b | 20 69 20 3c 20 6e 69 74 | (i = 0;| i < nit|
|00002a60| 65 6d 73 3b 20 69 2b 2b | 29 20 7b 0a 20 20 20 20 |ems; i++|) {. |
|00002a70| 20 20 20 20 20 69 66 20 | 28 73 74 72 63 6d 70 28 | if |(strcmp(|
|00002a80| 65 6e 74 72 69 65 73 5b | 30 5d 2e 76 61 6c 2c 20 |entries[|0].val, |
|00002a90| 62 6c 69 73 74 5b 69 5d | 2e 6e 61 6d 65 29 20 3d |blist[i]|.name) =|
|00002aa0| 3d 20 30 29 20 61 6c 72 | 65 61 64 79 5f 67 6f 74 |= 0) alr|eady_got|
|00002ab0| 5f 6f 6e 65 28 29 3b 0a | 20 20 20 20 20 20 20 7d |_one();.| }|
|00002ac0| 0a 0a 20 20 20 20 20 20 | 20 2f 2a 20 69 6e 63 72 |.. | /* incr|
|00002ad0| 65 6d 65 6e 74 20 74 68 | 65 20 6e 75 6d 62 65 72 |ement th|e number|
|00002ae0| 20 6f 66 20 69 74 65 6d | 73 20 63 6f 75 6e 74 20 | of item|s count |
|00002af0| 2a 2f 0a 20 20 20 20 20 | 20 20 6e 69 74 65 6d 73 |*/. | nitems|
|00002b00| 2b 2b 3b 0a 0a 20 20 20 | 20 20 20 20 2f 2a 20 70 |++;.. | /* p|
|00002b10| 75 74 20 76 61 6c 75 65 | 20 61 6e 64 20 69 6e 69 |ut value| and ini|
|00002b20| 74 69 61 6c 69 7a 65 20 | 74 6f 20 7a 65 72 6f 20 |tialize |to zero |
|00002b30| 76 6f 74 65 20 63 6f 75 | 6e 74 20 2a 2f 0a 20 20 |vote cou|nt */. |
|00002b40| 20 20 20 20 20 73 74 72 | 63 70 79 28 62 6c 69 73 | str|cpy(blis|
|00002b50| 74 5b 6e 69 74 65 6d 73 | 2d 31 5d 2e 6e 61 6d 65 |t[nitems|-1].name|
|00002b60| 2c 20 65 6e 74 72 69 65 | 73 5b 30 5d 2e 76 61 6c |, entrie|s[0].val|
|00002b70| 29 3b 0a 20 20 20 20 20 | 20 20 62 6c 69 73 74 5b |);. | blist[|
|00002b80| 6e 69 74 65 6d 73 2d 31 | 5d 2e 6e 76 6f 74 65 73 |nitems-1|].nvotes|
|00002b90| 20 3d 20 30 3b 0a 20 20 | 20 20 20 20 20 20 0a 20 | = 0;. | . |
|00002ba0| 20 20 20 20 7d 0a 0a 2f | 2a 20 2d 2d 2d 2d 2d 2d | }../|* ------|
|00002bb0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002bc0| 2d 2d 2d 20 45 4c 53 45 | 20 55 4e 52 45 43 4f 47 |--- ELSE| UNRECOG|
|00002bd0| 4e 49 5a 45 44 20 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |NIZED --|--------|
|00002be0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002bf0| 2d 2d 20 2a 2f 0a 20 20 | 20 7d 20 65 6c 73 65 20 |-- */. | } else |
|00002c00| 7b 0a 0a 20 20 20 20 20 | 2f 2a 20 66 6f 72 20 62 |{.. |/* for b|
|00002c10| 61 64 20 61 72 67 75 6d | 65 6e 74 2c 20 64 69 73 |ad argum|ent, dis|
|00002c20| 70 6c 61 79 20 74 68 65 | 20 6d 61 69 6e 20 48 54 |play the| main HT|
|00002c30| 4d 4c 20 70 61 67 65 20 | 61 6e 64 20 65 78 69 74 |ML page |and exit|
|00002c40| 20 2a 2f 0a 20 20 20 20 | 20 64 69 73 70 5f 6d 61 | */. | disp_ma|
|00002c50| 69 6e 5f 70 61 67 65 28 | 2d 31 29 3b 20 65 78 69 |in_page(|-1); exi|
|00002c60| 74 28 30 29 3b 0a 0a 20 | 20 20 7d 0a 0a 0a 20 20 |t(0);.. | }... |
|00002c70| 20 69 66 20 28 69 73 6f | 72 74 5f 66 6c 61 67 29 | if (iso|rt_flag)|
|00002c80| 20 7b 0a 0a 20 20 20 20 | 20 2f 2a 20 73 6f 72 74 | {.. | /* sort|
|00002c90| 20 74 68 65 20 69 74 65 | 6d 73 20 69 6e 20 6f 72 | the ite|ms in or|
|00002ca0| 64 65 72 20 6f 66 20 74 | 68 65 20 6e 75 6d 62 65 |der of t|he numbe|
|00002cb0| 72 20 6f 66 20 76 6f 74 | 65 73 20 2a 2f 0a 20 20 |r of vot|es */. |
|00002cc0| 20 20 20 66 6f 72 20 28 | 69 20 3d 20 30 3b 20 69 | for (|i = 0; i|
|00002cd0| 20 3c 20 6e 69 74 65 6d | 73 3b 20 69 2b 2b 29 20 | < nitem|s; i++) |
|00002ce0| 7b 0a 20 20 20 20 20 20 | 20 66 6f 72 20 28 6a 20 |{. | for (j |
|00002cf0| 3d 20 69 3b 20 6a 20 3c | 20 6e 69 74 65 6d 73 3b |= i; j <| nitems;|
|00002d00| 20 6a 2b 2b 29 20 7b 0a | 0a 20 20 20 20 20 20 20 | j++) {.|. |
|00002d10| 20 20 69 66 20 28 62 6c | 69 73 74 5b 6a 5d 2e 6e | if (bl|ist[j].n|
|00002d20| 76 6f 74 65 73 20 3e 20 | 62 6c 69 73 74 5b 69 5d |votes > |blist[i]|
|00002d30| 2e 6e 76 6f 74 65 73 29 | 20 7b 0a 0a 20 20 20 20 |.nvotes)| {.. |
|00002d40| 20 20 20 20 20 20 20 69 | 74 6d 70 20 3d 20 62 6c | i|tmp = bl|
|00002d50| 69 73 74 5b 69 5d 2e 6e | 76 6f 74 65 73 3b 0a 20 |ist[i].n|votes;. |
|00002d60| 20 20 20 20 20 20 20 20 | 20 20 62 6c 69 73 74 5b | | blist[|
|00002d70| 69 5d 2e 6e 76 6f 74 65 | 73 20 3d 20 62 6c 69 73 |i].nvote|s = blis|
|00002d80| 74 5b 6a 5d 2e 6e 76 6f | 74 65 73 3b 0a 20 20 20 |t[j].nvo|tes;. |
|00002d90| 20 20 20 20 20 20 20 20 | 62 6c 69 73 74 5b 6a 5d | |blist[j]|
|00002da0| 2e 6e 76 6f 74 65 73 20 | 3d 20 69 74 6d 70 3b 0a |.nvotes |= itmp;.|
|00002db0| 0a 20 20 20 20 20 20 20 | 20 20 20 20 73 74 72 63 |. | strc|
|00002dc0| 70 79 28 62 75 66 2c 20 | 62 6c 69 73 74 5b 69 5d |py(buf, |blist[i]|
|00002dd0| 2e 6e 61 6d 65 29 3b 0a | 20 20 20 20 20 20 20 20 |.name);.| |
|00002de0| 20 20 20 73 74 72 63 70 | 79 28 62 6c 69 73 74 5b | strcp|y(blist[|
|00002df0| 69 5d 2e 6e 61 6d 65 2c | 20 62 6c 69 73 74 5b 6a |i].name,| blist[j|
|00002e00| 5d 2e 6e 61 6d 65 29 3b | 0a 20 20 20 20 20 20 20 |].name);|. |
|00002e10| 20 20 20 20 73 74 72 63 | 70 79 28 62 6c 69 73 74 | strc|py(blist|
|00002e20| 5b 6a 5d 2e 6e 61 6d 65 | 2c 20 62 75 66 29 3b 0a |[j].name|, buf);.|
|00002e30| 0a 20 20 20 20 20 20 20 | 20 20 7d 0a 20 20 20 20 |. | }. |
|00002e40| 20 20 20 7d 0a 20 20 20 | 20 20 7d 0a 0a 20 20 20 | }. | }.. |
|00002e50| 7d 0a 0a 20 20 20 2f 2a | 20 77 72 69 74 65 20 74 |}.. /*| write t|
|00002e60| 68 65 20 65 78 69 73 74 | 69 6e 67 20 6c 69 73 74 |he exist|ing list|
|00002e70| 20 62 61 63 6b 20 74 6f | 20 74 68 65 20 74 68 65 | back to| the the|
|00002e80| 20 6c 69 73 74 20 66 69 | 6c 65 20 2a 2f 0a 20 20 | list fi|le */. |
|00002e90| 20 77 72 5f 6c 69 73 74 | 28 6c 69 73 74 29 3b 0a | wr_list|(list);.|
|00002ea0| 0a 20 20 20 2f 2a 20 77 | 72 69 74 65 20 74 68 65 |. /* w|rite the|
|00002eb0| 20 48 54 4d 4c 20 69 6e | 63 6c 75 64 65 20 66 69 | HTML in|clude fi|
|00002ec0| 6c 65 20 2a 2f 0a 20 20 | 20 77 72 5f 68 74 69 6e |le */. | wr_htin|
|00002ed0| 63 5f 66 69 6c 65 28 6c | 69 73 74 29 3b 0a 0a 20 |c_file(l|ist);.. |
|00002ee0| 20 20 2f 2a 20 72 65 64 | 69 73 70 6c 61 79 20 74 | /* red|isplay t|
|00002ef0| 68 65 20 70 61 67 65 20 | 2a 2f 0a 20 20 20 64 69 |he page |*/. di|
|00002f00| 73 70 5f 6d 61 69 6e 5f | 70 61 67 65 28 30 29 3b |sp_main_|page(0);|
|00002f10| 0a 0a 20 20 20 65 78 69 | 74 28 30 29 3b 0a 0a 7d |.. exi|t(0);..}|
|00002f20| 0a 0a 2f 2a 20 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |../* ---|--------|
|00002f30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002f40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002f50| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002f60| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002f70| 0a 20 20 20 64 69 73 70 | 5f 6d 61 69 6e 5f 70 61 |. disp|_main_pa|
|00002f80| 67 65 3a 20 64 69 73 70 | 6c 61 79 20 74 68 65 20 |ge: disp|lay the |
|00002f90| 6d 61 69 6e 20 70 6f 6c | 6c 20 70 61 67 65 0a 20 |main pol|l page. |
|00002fa0| 20 20 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | ------|--------|
|00002fb0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002fc0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002fd0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002fe0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 20 2a 2f 0a 20 20 |--------|-- */. |
|00002ff0| 20 76 6f 69 64 20 64 69 | 73 70 5f 6d 61 69 6e 5f | void di|sp_main_|
|00003000| 70 61 67 65 28 69 6e 74 | 20 69 73 74 61 74 75 73 |page(int| istatus|
|00003010| 29 20 7b 0a 0a 20 20 20 | 20 69 6e 74 20 69 2c 20 |) {.. | int i, |
|00003020| 6e 71 75 65 73 74 3b 0a | 20 20 20 20 46 49 4c 45 |nquest;.| FILE|
|00003030| 20 2a 66 70 3b 0a 20 20 | 20 20 63 68 61 72 20 69 | *fp;. | char i|
|00003040| 6e 63 66 6c 6e 61 6d 65 | 5b 32 35 36 5d 3b 0a 0a |ncflname|[256];..|
|00003050| 20 20 20 20 68 74 6d 6c | 5f 68 65 61 64 65 72 28 | html|_header(|
|00003060| 22 22 2c 20 22 22 29 3b | 0a 0a 20 20 20 20 69 66 |"", "");|.. if|
|00003070| 20 28 69 73 74 61 74 75 | 73 20 21 3d 20 30 29 20 | (istatu|s != 0) |
|00003080| 7b 0a 0a 20 20 20 20 20 | 20 70 72 69 6e 74 66 28 |{.. | printf(|
|00003090| 45 52 52 4f 52 5f 49 4d | 47 20 22 20 54 68 65 20 |ERROR_IM|G " The |
|000030a0| 72 65 71 75 65 73 74 65 | 64 20 70 6f 6c 6c 20 55 |requeste|d poll U|
|000030b0| 52 4c 20 69 73 20 69 6e | 63 6f 72 72 65 63 74 2c |RL is in|correct,|
|000030c0| 20 74 68 65 20 55 52 4c | 20 69 73 5c 6e 22 0a 20 | the URL| is\n". |
|000030d0| 20 20 20 20 20 20 20 22 | 70 72 6f 62 61 62 6c 79 | "|probably|
|000030e0| 20 66 72 6f 6d 20 61 6e | 20 6f 6c 64 20 71 75 65 | from an| old que|
|000030f0| 73 74 69 6f 6e 2e 20 54 | 68 65 20 63 6f 72 72 65 |stion. T|he corre|
|00003100| 63 74 20 55 52 4c 20 74 | 6f 20 61 63 63 65 73 73 |ct URL t|o access|
|00003110| 20 74 68 65 5c 6e 22 0a | 20 20 20 20 20 20 20 20 | the\n".| |
|00003120| 22 70 6f 6c 6c 20 69 73 | 20 22 20 50 4f 4c 4c 5f |"poll is| " POLL_|
|00003130| 48 52 45 46 20 53 45 52 | 56 45 52 20 50 4f 4c 4c |HREF SER|VER POLL|
|00003140| 5f 55 52 4c 20 22 3c 2f | 41 3e 5c 6e 3c 48 52 3e |_URL "</|A>\n<HR>|
|00003150| 5c 6e 22 29 3b 0a 0a 20 | 20 20 20 7d 20 65 6c 73 |\n");.. | } els|
|00003160| 65 20 69 66 20 28 6e 6f | 76 6f 74 65 66 6c 61 67 |e if (no|voteflag|
|00003170| 20 21 3d 20 30 29 20 7b | 0a 0a 20 20 20 20 20 20 | != 0) {|.. |
|00003180| 70 72 69 6e 74 66 28 45 | 52 52 4f 52 5f 49 4d 47 |printf(E|RROR_IMG|
|00003190| 20 22 20 56 6f 74 65 72 | 20 66 72 6f 6d 20 3c 42 | " Voter| from <B|
|000031a0| 3e 25 73 3c 2f 42 3e 2e | 20 20 59 6f 75 72 20 68 |>%s</B>.| Your h|
|000031b0| 6f 73 74 20 69 73 20 69 | 6e 20 74 68 65 5c 6e 22 |ost is i|n the\n"|
|000031c0| 0a 20 20 20 20 20 20 20 | 20 22 6c 69 73 74 20 6f |. | "list o|
|000031d0| 66 20 72 65 63 65 6e 74 | 20 76 6f 74 65 72 73 2c |f recent| voters,|
|000031e0| 20 73 6f 20 79 6f 75 20 | 63 61 6e 27 74 20 76 6f | so you |can't vo|
|000031f0| 74 65 20 61 67 61 69 6e | 2e 20 20 54 72 79 20 61 |te again|. Try a|
|00003200| 6e 6f 74 68 65 72 5c 6e | 22 0a 20 20 20 20 20 20 |nother\n|". |
|00003210| 20 20 22 71 75 65 73 74 | 69 6f 6e 21 5c 6e 3c 48 | "quest|ion!\n<H|
|00003220| 52 3e 5c 6e 22 2c 20 68 | 61 29 3b 0a 0a 20 20 20 |R>\n", h|a);.. |
|00003230| 20 7d 20 65 6c 73 65 20 | 7b 0a 0a 20 20 20 20 20 | } else |{.. |
|00003240| 20 23 69 66 64 65 66 20 | 48 54 4d 4c 5f 4c 45 41 | #ifdef |HTML_LEA|
|00003250| 44 49 4e 0a 20 20 20 20 | 20 20 20 20 70 72 69 6e |DIN. | prin|
|00003260| 74 66 28 48 54 4d 4c 5f | 4c 45 41 44 49 4e 29 3b |tf(HTML_|LEADIN);|
|00003270| 0a 20 20 20 20 20 20 23 | 65 6e 64 69 66 0a 0a 20 |. #|endif.. |
|00003280| 20 20 20 7d 0a 0a 20 20 | 20 20 69 66 20 28 28 66 | }.. | if ((f|
|00003290| 70 20 3d 20 66 6f 70 65 | 6e 28 43 46 47 5f 46 49 |p = fope|n(CFG_FI|
|000032a0| 4c 45 2c 20 22 72 22 29 | 29 20 3d 3d 20 4e 55 4c |LE, "r")|) == NUL|
|000032b0| 4c 29 0a 20 20 20 20 20 | 20 65 72 72 5f 6d 73 67 |L). | err_msg|
|000032c0| 28 22 45 72 72 6f 72 20 | 6f 70 65 6e 69 6e 67 20 |("Error |opening |
|000032d0| 63 6f 6e 66 69 67 75 72 | 61 74 69 6f 6e 20 66 69 |configur|ation fi|
|000032e0| 6c 65 20 66 6f 72 20 72 | 65 61 64 69 6e 67 3a 20 |le for r|eading: |
|000032f0| 22 2c 20 43 46 47 5f 46 | 49 4c 45 29 3b 0a 0a 20 |", CFG_F|ILE);.. |
|00003300| 20 20 20 66 73 63 61 6e | 66 28 66 70 2c 20 22 25 | fscan|f(fp, "%|
|00003310| 64 5c 6e 22 2c 20 26 6e | 71 75 65 73 74 29 3b 0a |d\n", &n|quest);.|
|00003320| 20 20 20 20 69 66 20 28 | 6e 71 75 65 73 74 20 3c | if (|nquest <|
|00003330| 20 31 29 20 65 72 72 5f | 6d 73 67 28 22 49 6e 76 | 1) err_|msg("Inv|
|00003340| 61 6c 69 64 20 6e 75 6d | 62 65 72 20 6f 66 20 70 |alid num|ber of p|
|00003350| 6f 6c 6c 73 20 69 6e 20 | 63 6f 6e 66 69 67 20 66 |olls in |config f|
|00003360| 69 6c 65 2e 22 2c 20 22 | 22 29 3b 0a 0a 20 20 20 |ile.", "|");.. |
|00003370| 20 66 6f 72 20 28 69 20 | 3d 20 30 3b 20 69 20 3c | for (i |= 0; i <|
|00003380| 20 6e 71 75 65 73 74 3b | 20 69 2b 2b 29 20 7b 0a | nquest;| i++) {.|
|00003390| 0a 20 20 20 20 20 20 66 | 67 65 74 73 28 62 75 66 |. f|gets(buf|
|000033a0| 2c 20 42 55 46 5f 4c 45 | 4e 2c 20 66 70 29 3b 20 |, BUF_LE|N, fp); |
|000033b0| 73 74 72 69 70 5f 65 6e | 64 5f 63 72 28 62 75 66 |strip_en|d_cr(buf|
|000033c0| 29 3b 0a 20 20 20 20 20 | 20 69 66 20 28 66 65 72 |);. | if (fer|
|000033d0| 72 6f 72 28 66 70 29 29 | 20 65 72 72 5f 6d 73 67 |ror(fp))| err_msg|
|000033e0| 28 22 45 72 72 6f 72 20 | 72 65 61 64 69 6e 67 20 |("Error |reading |
|000033f0| 63 6f 6e 66 69 67 20 66 | 69 6c 65 2e 22 2c 20 43 |config f|ile.", C|
|00003400| 46 47 5f 46 49 4c 45 29 | 3b 0a 0a 20 20 20 20 20 |FG_FILE)|;.. |
|00003410| 20 2f 2a 20 74 68 69 73 | 20 6f 6e 6c 79 20 77 6f | /* this| only wo|
|00003420| 72 6b 73 20 77 69 74 68 | 20 4e 43 53 41 20 31 2e |rks with| NCSA 1.|
|00003430| 31 2c 20 72 65 70 6c 61 | 63 65 64 20 66 6f 72 20 |1, repla|ced for |
|00003440| 6f 74 68 65 72 20 76 65 | 72 73 69 6f 6e 73 20 2a |other ve|rsions *|
|00003450| 2f 0a 20 20 20 20 20 20 | 2f 2a 20 70 72 69 6e 74 |/. |/* print|
|00003460| 66 28 22 3c 49 4e 43 20 | 53 52 56 20 5c 22 22 20 |f("<INC |SRV \"" |
|00003470| 49 4e 43 5f 55 52 4c 5f | 42 41 53 45 20 22 25 73 |INC_URL_|BASE "%s|
|00003480| 2e 68 74 69 6e 63 5c 22 | 3e 5c 6e 22 2c 20 62 75 |.htinc\"|>\n", bu|
|00003490| 66 29 3b 20 2a 2f 0a 0a | 20 20 20 20 20 20 2f 2a |f); */..| /*|
|000034a0| 20 62 75 69 6c 64 20 74 | 68 65 20 66 69 6c 65 6e | build t|he filen|
|000034b0| 61 6d 65 20 2a 2f 0a 20 | 20 20 20 20 20 73 70 72 |ame */. | spr|
|000034c0| 69 6e 74 66 28 69 6e 63 | 66 6c 6e 61 6d 65 2c 20 |intf(inc|flname, |
|000034d0| 48 54 49 4e 43 5f 46 49 | 4c 45 5f 44 49 52 20 22 |HTINC_FI|LE_DIR "|
|000034e0| 25 73 2e 68 74 69 6e 63 | 22 2c 20 62 75 66 29 3b |%s.htinc|", buf);|
|000034f0| 0a 0a 20 20 20 20 20 20 | 2f 2a 20 69 6e 63 6c 75 |.. |/* inclu|
|00003500| 64 65 20 74 68 65 20 66 | 69 6c 65 20 64 69 72 65 |de the f|ile dire|
|00003510| 63 74 6c 79 20 66 72 6f | 6d 20 74 68 65 20 63 6f |ctly fro|m the co|
|00003520| 64 65 20 2a 2f 0a 20 20 | 20 20 20 20 69 66 20 28 |de */. | if (|
|00003530| 69 6e 63 6c 75 64 65 5f | 66 69 6c 65 28 69 6e 63 |include_|file(inc|
|00003540| 66 6c 6e 61 6d 65 29 20 | 21 3d 20 30 29 0a 20 20 |flname) |!= 0). |
|00003550| 20 20 20 20 20 20 65 72 | 72 5f 6d 73 67 28 22 45 | er|r_msg("E|
|00003560| 72 72 6f 72 20 69 6e 63 | 6c 75 64 69 6e 67 20 68 |rror inc|luding h|
|00003570| 74 69 6e 63 20 66 69 6c | 65 3a 22 2c 20 69 6e 63 |tinc fil|e:", inc|
|00003580| 66 6c 6e 61 6d 65 29 3b | 0a 0a 20 20 20 20 20 20 |flname);|.. |
|00003590| 70 72 69 6e 74 66 28 22 | 3c 48 52 3e 5c 6e 22 29 |printf("|<HR>\n")|
|000035a0| 3b 0a 0a 20 20 20 20 7d | 0a 0a 20 20 20 20 66 63 |;.. }|.. fc|
|000035b0| 6c 6f 73 65 28 66 70 29 | 3b 0a 0a 20 20 20 20 23 |lose(fp)|;.. #|
|000035c0| 69 66 64 65 66 20 48 54 | 4d 4c 5f 46 4f 4f 54 45 |ifdef HT|ML_FOOTE|
|000035d0| 52 0a 20 20 20 20 20 20 | 70 72 69 6e 74 66 28 48 |R. |printf(H|
|000035e0| 54 4d 4c 5f 46 4f 4f 54 | 45 52 29 3b 0a 20 20 20 |TML_FOOT|ER);. |
|000035f0| 20 23 65 6e 64 69 66 0a | 0a 20 20 20 20 70 72 69 | #endif.|. pri|
|00003600| 6e 74 66 28 22 3c 2f 42 | 4f 44 59 3e 5c 6e 3c 2f |ntf("</B|ODY>\n</|
|00003610| 48 54 4d 4c 3e 5c 6e 22 | 29 3b 0a 0a 20 20 20 7d |HTML>\n"|);.. }|
|00003620| 0a 0a 2f 2a 20 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |../* ---|--------|
|00003630| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003640| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003650| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003660| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003670| 0a 20 20 20 77 72 5f 68 | 74 69 6e 63 5f 66 69 6c |. wr_h|tinc_fil|
|00003680| 65 3a 20 77 72 69 74 65 | 20 68 74 69 6e 63 20 28 |e: write| htinc (|
|00003690| 48 54 4d 4c 20 69 6e 63 | 6c 75 64 65 20 66 69 6c |HTML inc|lude fil|
|000036a0| 65 29 20 64 61 74 61 20 | 74 6f 20 66 69 6c 65 0a |e) data |to file.|
|000036b0| 20 20 20 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | -----|--------|
|000036c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000036d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000036e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000036f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 20 2a 2f 0a 20 |--------|--- */. |
|00003700| 20 20 76 6f 69 64 20 77 | 72 5f 68 74 69 6e 63 5f | void w|r_htinc_|
|00003710| 66 69 6c 65 28 63 68 61 | 72 20 2a 6c 69 73 74 6e |file(cha|r *listn|
|00003720| 61 6d 65 29 20 7b 0a 0a | 20 20 20 20 20 69 6e 74 |ame) {..| int|
|00003730| 20 69 3b 0a 20 20 20 20 | 20 63 68 61 72 20 66 6c | i;. | char fl|
|00003740| 6e 61 6d 65 5b 32 35 36 | 5d 3b 0a 20 20 20 20 20 |name[256|];. |
|00003750| 46 49 4c 45 20 2a 66 70 | 3b 0a 0a 20 20 20 20 20 |FILE *fp|;.. |
|00003760| 69 66 20 28 28 6e 69 74 | 65 6d 73 20 3c 20 4d 49 |if ((nit|ems < MI|
|00003770| 4e 5f 49 54 45 4d 53 29 | 20 7c 7c 20 28 6e 69 74 |N_ITEMS)| || (nit|
|00003780| 65 6d 73 20 3e 20 4d 41 | 58 5f 49 54 45 4d 53 29 |ems > MA|X_ITEMS)|
|00003790| 29 0a 20 20 20 20 20 20 | 20 65 72 72 5f 6d 73 67 |). | err_msg|
|000037a0| 28 22 49 6e 76 61 6c 69 | 64 20 6e 75 6d 62 65 72 |("Invali|d number|
|000037b0| 20 6f 66 20 69 74 65 6d | 73 20 74 72 79 69 6e 67 | of item|s trying|
|000037c0| 20 74 6f 20 77 72 69 74 | 65 20 69 6e 63 6c 75 64 | to writ|e includ|
|000037d0| 65 20 66 69 6c 65 2e 22 | 2c 20 22 22 29 3b 0a 0a |e file."|, "");..|
|000037e0| 20 20 20 20 20 2f 2a 20 | 62 75 69 6c 64 20 74 68 | /* |build th|
|000037f0| 65 20 66 69 6c 65 6e 61 | 6d 65 20 2a 2f 0a 20 20 |e filena|me */. |
|00003800| 20 20 20 73 70 72 69 6e | 74 66 28 66 6c 6e 61 6d | sprin|tf(flnam|
|00003810| 65 2c 20 48 54 49 4e 43 | 5f 46 49 4c 45 5f 44 49 |e, HTINC|_FILE_DI|
|00003820| 52 20 22 25 73 2e 68 74 | 69 6e 63 22 2c 20 6c 69 |R "%s.ht|inc", li|
|00003830| 73 74 6e 61 6d 65 29 3b | 0a 0a 20 20 20 20 20 69 |stname);|.. i|
|00003840| 66 20 28 28 66 70 20 3d | 20 66 6f 70 65 6e 28 66 |f ((fp =| fopen(f|
|00003850| 6c 6e 61 6d 65 2c 20 22 | 77 22 29 29 20 3d 3d 20 |lname, "|w")) == |
|00003860| 4e 55 4c 4c 29 0a 20 20 | 20 20 20 20 20 65 72 72 |NULL). | err|
|00003870| 5f 6d 73 67 28 22 45 72 | 72 6f 72 20 6f 70 65 6e |_msg("Er|ror open|
|00003880| 69 6e 67 20 69 6e 63 6c | 75 64 65 20 66 69 6c 65 |ing incl|ude file|
|00003890| 20 66 6f 72 20 77 72 69 | 74 69 6e 67 2e 22 2c 20 | for wri|ting.", |
|000038a0| 66 6c 6e 61 6d 65 29 3b | 0a 0a 20 20 20 20 20 66 |flname);|.. f|
|000038b0| 70 72 69 6e 74 66 28 66 | 70 2c 20 22 25 73 5c 6e |printf(f|p, "%s\n|
|000038c0| 25 73 5c 6e 22 2c 20 71 | 68 65 61 64 65 72 2c 20 |%s\n", q|header, |
|000038d0| 71 74 69 74 6c 65 29 3b | 0a 20 0a 20 20 20 20 20 |qtitle);|. . |
|000038e0| 66 70 72 69 6e 74 66 28 | 66 70 2c 20 22 3c 44 4c |fprintf(|fp, "<DL|
|000038f0| 3e 5c 6e 3c 44 44 3e 5c | 6e 22 29 3b 0a 0a 20 20 |>\n<DD>\|n");.. |
|00003900| 20 20 20 66 6f 72 20 28 | 69 20 3d 20 30 3b 20 69 | for (|i = 0; i|
|00003910| 20 3c 20 6e 69 74 65 6d | 73 3b 20 69 2b 2b 29 20 | < nitem|s; i++) |
|00003920| 7b 0a 0a 20 20 20 20 20 | 20 20 69 66 20 28 69 76 |{.. | if (iv|
|00003930| 70 6c 75 73 5f 66 6c 61 | 67 29 20 7b 0a 20 20 20 |plus_fla|g) {. |
|00003940| 20 20 20 20 20 20 66 70 | 72 69 6e 74 66 28 66 70 | fp|rintf(fp|
|00003950| 2c 20 22 3c 41 20 48 52 | 45 46 3d 5c 22 22 20 50 |, "<A HR|EF=\"" P|
|00003960| 4f 4c 4c 5f 55 52 4c 20 | 22 3f 76 70 6c 75 73 2b |OLL_URL |"?vplus+|
|00003970| 25 73 2b 25 64 5c 22 3e | 22 20 56 50 4c 55 53 5f |%s+%d\">|" VPLUS_|
|00003980| 49 4d 47 20 22 3c 2f 41 | 3e 22 2c 0a 20 20 20 20 |IMG "</A|>",. |
|00003990| 20 20 20 20 20 20 20 6c | 69 73 74 6e 61 6d 65 2c | l|istname,|
|000039a0| 20 69 2c 20 76 70 6c 75 | 73 5f 67 69 66 29 3b 0a | i, vplu|s_gif);.|
|000039b0| 20 20 20 20 20 20 20 7d | 0a 20 20 20 20 20 0a 20 | }|. . |
|000039c0| 20 20 20 20 20 20 66 70 | 72 69 6e 74 66 28 66 70 | fp|rintf(fp|
|000039d0| 2c 20 22 20 22 29 3b 0a | 20 20 20 20 0a 20 20 20 |, " ");.| . |
|000039e0| 20 20 20 20 69 66 20 28 | 69 76 6d 69 6e 75 73 5f | if (|ivminus_|
|000039f0| 66 6c 61 67 29 20 7b 0a | 20 20 20 20 20 20 20 20 |flag) {.| |
|00003a00| 20 66 70 72 69 6e 74 66 | 28 66 70 2c 20 22 3c 41 | fprintf|(fp, "<A|
|00003a10| 20 48 52 45 46 3d 5c 22 | 22 20 50 4f 4c 4c 5f 55 | HREF=\"|" POLL_U|
|00003a20| 52 4c 20 22 3f 76 6d 69 | 6e 75 73 2b 25 73 2b 25 |RL "?vmi|nus+%s+%|
|00003a30| 64 5c 22 3e 22 20 56 4d | 49 4e 55 53 5f 49 4d 47 |d\">" VM|INUS_IMG|
|00003a40| 20 22 3c 2f 41 3e 22 2c | 0a 20 20 20 20 20 20 20 | "</A>",|. |
|00003a50| 20 20 20 20 6c 69 73 74 | 6e 61 6d 65 2c 20 69 2c | list|name, i,|
|00003a60| 20 76 6d 69 6e 75 73 5f | 67 69 66 29 3b 0a 20 20 | vminus_|gif);. |
|00003a70| 20 20 20 20 20 7d 0a 20 | 20 20 20 20 0a 20 20 20 | }. | . |
|00003a80| 20 20 20 20 69 66 20 28 | 69 64 63 6e 74 5f 66 6c | if (|idcnt_fl|
|00003a90| 61 67 29 20 7b 0a 20 20 | 20 20 20 20 20 20 20 66 |ag) {. | f|
|00003aa0| 70 72 69 6e 74 66 28 66 | 70 2c 20 22 20 25 73 20 |printf(f|p, " %s |
|00003ab0| 28 25 64 29 3c 50 3e 5c | 6e 22 2c 20 62 6c 69 73 |(%d)<P>\|n", blis|
|00003ac0| 74 5b 69 5d 2e 6e 61 6d | 65 2c 20 62 6c 69 73 74 |t[i].nam|e, blist|
|00003ad0| 5b 69 5d 2e 6e 76 6f 74 | 65 73 29 3b 0a 20 20 20 |[i].nvot|es);. |
|00003ae0| 20 20 20 20 7d 20 65 6c | 73 65 20 7b 0a 20 20 20 | } el|se {. |
|00003af0| 20 20 20 20 20 20 66 70 | 72 69 6e 74 66 28 66 70 | fp|rintf(fp|
|00003b00| 2c 20 22 20 25 73 3c 50 | 3e 5c 6e 22 2c 20 62 6c |, " %s<P|>\n", bl|
|00003b10| 69 73 74 5b 69 5d 2e 6e | 61 6d 65 29 3b 0a 20 20 |ist[i].n|ame);. |
|00003b20| 20 20 20 20 20 7d 0a 0a | 20 20 20 20 20 20 20 69 | }..| i|
|00003b30| 66 20 28 66 65 72 72 6f | 72 28 66 70 29 29 20 65 |f (ferro|r(fp)) e|
|00003b40| 72 72 5f 6d 73 67 28 22 | 45 72 72 6f 72 20 77 72 |rr_msg("|Error wr|
|00003b50| 69 74 69 6e 67 20 74 6f | 20 69 6e 63 6c 75 64 65 |iting to| include|
|00003b60| 20 66 69 6c 65 3a 22 2c | 20 66 6c 6e 61 6d 65 29 | file:",| flname)|
|00003b70| 3b 0a 0a 20 20 20 20 20 | 7d 0a 0a 20 20 20 20 20 |;.. |}.. |
|00003b80| 2f 2a 20 6f 6e 6c 79 20 | 64 69 73 70 6c 61 79 20 |/* only |display |
|00003b90| 61 64 64 20 62 75 74 74 | 6f 6e 20 69 66 20 75 73 |add butt|on if us|
|00003ba0| 65 72 27 73 20 63 61 6e | 20 61 64 64 20 74 6f 20 |er's can| add to |
|00003bb0| 74 68 65 20 6c 69 73 74 | 20 2a 2f 0a 20 20 20 20 |the list| */. |
|00003bc0| 20 69 66 20 28 69 61 64 | 64 5f 66 6c 61 67 29 20 | if (iad|d_flag) |
|00003bd0| 7b 0a 20 20 20 20 20 20 | 20 66 70 72 69 6e 74 66 |{. | fprintf|
|00003be0| 28 66 70 2c 20 22 3c 41 | 20 48 52 45 46 3d 5c 22 |(fp, "<A| HREF=\"|
|00003bf0| 22 20 50 4f 4c 4c 5f 55 | 52 4c 20 22 3f 61 64 64 |" POLL_U|RL "?add|
|00003c00| 2b 25 73 2b 30 5c 22 3e | 22 20 41 44 44 5f 49 4d |+%s+0\">|" ADD_IM|
|00003c10| 47 20 22 3c 2f 41 3e 5c | 6e 22 2c 0a 20 20 20 20 |G "</A>\|n",. |
|00003c20| 20 20 20 20 20 6c 69 73 | 74 6e 61 6d 65 2c 20 61 | lis|tname, a|
|00003c30| 64 64 5f 67 69 66 29 3b | 0a 20 20 20 20 20 7d 0a |dd_gif);|. }.|
|00003c40| 20 20 20 20 0a 20 20 20 | 20 20 66 70 72 69 6e 74 | . | fprint|
|00003c50| 66 28 66 70 2c 20 22 3c | 2f 44 44 3e 5c 6e 22 29 |f(fp, "<|/DD>\n")|
|00003c60| 3b 0a 20 20 20 20 20 66 | 70 72 69 6e 74 66 28 66 |;. f|printf(f|
|00003c70| 70 2c 20 22 3c 50 3e 5c | 6e 3c 44 54 3e 54 6f 74 |p, "<P>\|n<DT>Tot|
|00003c80| 61 6c 20 76 6f 74 65 73 | 3a 20 25 64 2c 20 4c 61 |al votes|: %d, La|
|00003c90| 73 74 20 76 6f 74 65 20 | 66 72 6f 6d 3a 20 25 73 |st vote |from: %s|
|00003ca0| 3c 2f 44 54 3e 5c 6e 22 | 2c 20 0a 20 20 20 20 20 |</DT>\n"|, . |
|00003cb0| 20 20 74 6f 74 61 6c 6e | 75 6d 76 6f 74 65 73 2c | totaln|umvotes,|
|00003cc0| 20 6c 61 73 74 76 6f 74 | 65 72 29 3b 0a 20 20 20 | lastvot|er);. |
|00003cd0| 20 20 66 70 72 69 6e 74 | 66 28 66 70 2c 20 22 3c | fprint|f(fp, "<|
|00003ce0| 2f 44 4c 3e 5c 6e 22 29 | 3b 0a 0a 20 20 20 20 20 |/DL>\n")|;.. |
|00003cf0| 66 63 6c 6f 73 65 28 66 | 70 29 3b 0a 0a 20 20 20 |fclose(f|p);.. |
|00003d00| 7d 0a 0a 2f 2a 20 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |}../* --|--------|
|00003d10| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003d20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003d30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003d40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003d50| 2d 0a 20 20 20 61 64 64 | 5f 65 6e 74 72 79 5f 70 |-. add|_entry_p|
|00003d60| 61 67 65 3a 20 64 69 73 | 70 6c 61 79 20 74 68 65 |age: dis|play the|
|00003d70| 20 66 6f 72 6d 20 74 6f | 20 61 64 64 20 61 6e 20 | form to| add an |
|00003d80| 65 6e 74 72 79 0a 20 20 | 20 2d 2d 2d 2d 2d 2d 2d |entry. | -------|
|00003d90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003da0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003db0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003dc0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003dd0| 2d 20 2a 2f 0a 20 20 20 | 76 6f 69 64 20 61 64 64 |- */. |void add|
|00003de0| 5f 65 6e 74 72 79 5f 70 | 61 67 65 28 63 68 61 72 |_entry_p|age(char|
|00003df0| 20 2a 6c 69 73 74 29 20 | 7b 0a 0a 20 20 20 20 20 | *list) |{.. |
|00003e00| 69 6e 74 20 69 3b 0a 0a | 20 20 20 20 20 68 74 6d |int i;..| htm|
|00003e10| 6c 5f 68 65 61 64 65 72 | 28 22 3a 20 41 64 64 20 |l_header|(": Add |
|00003e20| 45 6e 74 72 79 22 2c 20 | 22 22 29 3b 0a 0a 20 20 |Entry", |"");.. |
|00003e30| 20 20 20 70 72 69 6e 74 | 66 28 22 54 68 65 20 63 | print|f("The c|
|00003e40| 75 72 72 65 6e 74 20 65 | 6e 74 72 69 65 73 20 66 |urrent e|ntries f|
|00003e50| 6f 72 20 74 68 69 73 20 | 71 75 65 73 74 69 6f 6e |or this |question|
|00003e60| 20 61 72 65 3a 5c 6e 3c | 50 3e 5c 6e 22 29 3b 0a | are:\n<|P>\n");.|
|00003e70| 20 20 20 20 20 70 72 69 | 6e 74 66 28 22 25 73 5c | pri|ntf("%s\|
|00003e80| 6e 3c 55 4c 3e 5c 6e 22 | 2c 20 71 74 69 74 6c 65 |n<UL>\n"|, qtitle|
|00003e90| 29 3b 0a 0a 20 20 20 20 | 20 66 6f 72 20 28 69 20 |);.. | for (i |
|00003ea0| 3d 20 30 3b 20 69 20 3c | 20 6e 69 74 65 6d 73 3b |= 0; i <| nitems;|
|00003eb0| 20 69 2b 2b 29 20 7b 0a | 20 20 20 20 20 20 20 70 | i++) {.| p|
|00003ec0| 72 69 6e 74 66 28 22 3c | 4c 49 3e 25 73 20 28 25 |rintf("<|LI>%s (%|
|00003ed0| 64 29 5c 6e 3c 2f 4c 49 | 3e 22 2c 20 62 6c 69 73 |d)\n</LI|>", blis|
|00003ee0| 74 5b 69 5d 2e 6e 61 6d | 65 2c 20 62 6c 69 73 74 |t[i].nam|e, blist|
|00003ef0| 5b 69 5d 2e 6e 76 6f 74 | 65 73 29 3b 0a 20 20 20 |[i].nvot|es);. |
|00003f00| 20 20 7d 0a 20 20 20 20 | 0a 20 20 20 20 20 70 72 | }. |. pr|
|00003f10| 69 6e 74 66 28 22 3c 2f | 55 4c 3e 5c 6e 3c 48 52 |intf("</|UL>\n<HR|
|00003f20| 3e 5c 6e 22 29 3b 0a 0a | 20 20 20 20 20 70 72 69 |>\n");..| pri|
|00003f30| 6e 74 66 28 22 3c 46 4f | 52 4d 20 4d 45 54 48 4f |ntf("<FO|RM METHO|
|00003f40| 44 3d 5c 22 50 4f 53 54 | 5c 22 20 41 43 54 49 4f |D=\"POST|\" ACTIO|
|00003f50| 4e 3d 5c 22 22 20 50 4f | 4c 4c 5f 55 52 4c 20 22 |N=\"" PO|LL_URL "|
|00003f60| 3f 70 72 6f 63 6e 65 77 | 2b 25 73 2b 30 5c 22 3e |?procnew|+%s+0\">|
|00003f70| 5c 6e 22 2c 0a 20 20 20 | 20 20 20 20 6c 69 73 74 |\n",. | list|
|00003f80| 29 3b 0a 20 20 20 20 0a | 20 20 20 20 20 70 72 69 |);. .| pri|
|00003f90| 6e 74 66 28 22 3c 42 3e | 45 6e 74 65 72 20 49 74 |ntf("<B>|Enter It|
|00003fa0| 65 6d 20 4e 61 6d 65 3a | 3c 2f 42 3e 3c 42 52 3e |em Name:|</B><BR>|
|00003fb0| 5c 6e 22 0a 20 20 20 20 | 20 20 20 22 3c 49 4e 50 |\n". | "<INP|
|00003fc0| 55 54 20 54 59 50 45 3d | 5c 22 74 65 78 74 5c 22 |UT TYPE=|\"text\"|
|00003fd0| 20 4e 41 4d 45 3d 5c 22 | 69 74 65 6d 5c 22 20 53 | NAME=\"|item\" S|
|00003fe0| 49 5a 45 3d 35 32 20 4d | 41 58 4c 45 4e 47 54 48 |IZE=52 M|AXLENGTH|
|00003ff0| 3d 25 64 3e 5c 6e 3c 50 | 3e 5c 6e 22 2c 0a 20 20 |=%d>\n<P|>\n",. |
|00004000| 20 20 20 20 20 4d 41 58 | 5f 4e 41 4d 45 5f 4c 45 | MAX|_NAME_LE|
|00004010| 4e 2d 32 29 3b 0a 0a 20 | 20 20 20 20 70 72 69 6e |N-2);.. | prin|
|00004020| 74 66 28 22 3c 50 3e 5c | 6e 3c 49 4e 50 55 54 20 |tf("<P>\|n<INPUT |
|00004030| 54 59 50 45 3d 5c 22 73 | 75 62 6d 69 74 5c 22 20 |TYPE=\"s|ubmit\" |
|00004040| 56 41 4c 55 45 3d 5c 22 | 20 53 55 42 4d 49 54 20 |VALUE=\"| SUBMIT |
|00004050| 54 48 45 20 4e 45 57 20 | 49 54 45 4d 20 5c 22 3e |THE NEW |ITEM \">|
|00004060| 5c 6e 22 0a 20 20 20 20 | 20 20 20 22 3c 2f 46 4f |\n". | "</FO|
|00004070| 52 4d 3e 5c 6e 22 29 3b | 0a 0a 20 20 20 20 20 70 |RM>\n");|.. p|
|00004080| 72 69 6e 74 66 28 22 3c | 48 52 3e 5c 6e 3c 42 3e |rintf("<|HR>\n<B>|
|00004090| 5c 6e 22 20 50 4f 4c 4c | 5f 48 52 45 46 20 42 41 |\n" POLL|_HREF BA|
|000040a0| 43 4b 5f 49 4d 47 20 22 | 3c 2f 41 3e 5c 6e 22 0a |CK_IMG "|</A>\n".|
|000040b0| 20 20 20 20 20 20 20 22 | 51 75 69 74 20 42 61 63 | "|Quit Bac|
|000040c0| 6b 20 74 6f 20 22 20 50 | 4f 4c 4c 5f 48 52 45 46 |k to " P|OLL_HREF|
|000040d0| 20 54 49 54 4c 45 20 22 | 3c 2f 41 3e 5c 6e 3c 2f | TITLE "|</A>\n</|
|000040e0| 42 3e 5c 6e 22 29 3b 0a | 20 20 20 20 0a 20 20 20 |B>\n");.| . |
|000040f0| 20 20 7d 0a 0a 2f 2a 20 | 2d 2d 2d 2d 2d 2d 2d 2d | }../* |--------|
|00004100| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004110| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004120| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004130| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004140| 2d 2d 2d 0a 20 20 20 68 | 74 6d 6c 5f 68 65 61 64 |---. h|tml_head|
|00004150| 65 72 3a 20 68 65 61 64 | 65 72 20 66 6f 72 20 68 |er: head|er for h|
|00004160| 74 6d 6c 20 70 61 67 65 | 73 0a 20 20 20 2d 2d 2d |tml page|s. ---|
|00004170| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004180| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004190| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000041a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000041b0| 2d 2d 2d 2d 2d 20 2a 2f | 0a 20 20 20 76 6f 69 64 |----- */|. void|
|000041c0| 20 68 74 6d 6c 5f 68 65 | 61 64 65 72 28 63 68 61 | html_he|ader(cha|
|000041d0| 72 20 2a 73 31 2c 20 63 | 68 61 72 20 2a 73 32 29 |r *s1, c|har *s2)|
|000041e0| 20 7b 0a 0a 20 20 20 20 | 20 70 72 69 6e 74 66 28 | {.. | printf(|
|000041f0| 22 43 6f 6e 74 65 6e 74 | 2d 74 79 70 65 3a 20 74 |"Content|-type: t|
|00004200| 65 78 74 2f 68 74 6d 6c | 5c 6e 5c 6e 22 29 3b 0a |ext/html|\n\n");.|
|00004210| 0a 20 20 20 20 20 70 72 | 69 6e 74 66 28 22 3c 48 |. pr|intf("<H|
|00004220| 54 4d 4c 3e 5c 6e 3c 48 | 45 41 44 3e 5c 6e 22 29 |TML>\n<H|EAD>\n")|
|00004230| 3b 0a 20 20 20 20 20 70 | 72 69 6e 74 66 28 22 3c |;. p|rintf("<|
|00004240| 54 49 54 4c 45 3e 22 20 | 54 49 54 4c 45 20 22 25 |TITLE>" |TITLE "%|
|00004250| 73 20 25 73 3c 2f 54 49 | 54 4c 45 3e 5c 6e 22 2c |s %s</TI|TLE>\n",|
|00004260| 20 73 31 2c 20 73 32 29 | 3b 0a 20 20 20 20 20 70 | s1, s2)|;. p|
|00004270| 72 69 6e 74 66 28 22 3c | 2f 48 45 41 44 3e 5c 6e |rintf("<|/HEAD>\n|
|00004280| 3c 42 4f 44 59 3e 5c 6e | 22 29 3b 0a 20 20 20 20 |<BODY>\n|");. |
|00004290| 20 70 72 69 6e 74 66 28 | 22 3c 48 32 3e 22 20 54 | printf(|"<H2>" T|
|000042a0| 49 54 4c 45 20 22 25 73 | 20 25 73 3c 2f 48 32 3e |ITLE "%s| %s</H2>|
|000042b0| 5c 6e 3c 48 52 3e 22 2c | 20 73 31 2c 20 73 32 29 |\n<HR>",| s1, s2)|
|000042c0| 3b 0a 0a 20 20 20 7d 0a | 0a 2f 2a 20 2d 2d 2d 2d |;.. }.|./* ----|
|000042d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000042e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000042f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004300| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004310| 2d 2d 2d 2d 2d 2d 2d 0a | 20 20 20 6c 6f 61 64 5f |-------.| load_|
|00004320| 6c 69 73 74 3a 20 6c 6f | 61 64 20 6c 69 73 74 20 |list: lo|ad list |
|00004330| 64 61 74 61 20 66 72 6f | 6d 20 66 69 6c 65 0a 20 |data fro|m file. |
|00004340| 20 20 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | ------|--------|
|00004350| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004360| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004370| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004380| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 20 2a 2f 0a 20 20 |--------|-- */. |
|00004390| 20 76 6f 69 64 20 6c 6f | 61 64 5f 6c 69 73 74 28 | void lo|ad_list(|
|000043a0| 63 68 61 72 20 2a 6c 69 | 73 74 6e 61 6d 65 29 20 |char *li|stname) |
|000043b0| 7b 0a 0a 20 20 20 20 20 | 69 6e 74 20 69 3b 0a 20 |{.. |int i;. |
|000043c0| 20 20 20 20 63 68 61 72 | 20 66 6c 6e 61 6d 65 5b | char| flname[|
|000043d0| 31 32 38 5d 3b 0a 20 20 | 20 20 20 46 49 4c 45 20 |128];. | FILE |
|000043e0| 2a 66 70 3b 0a 20 20 20 | 20 20 76 6f 74 65 72 6c |*fp;. | voterl|
|000043f0| 6f 67 5f 65 6e 74 72 79 | 20 2a 76 6c 6f 67 5f 70 |og_entry| *vlog_p|
|00004400| 74 72 3b 0a 0a 20 20 20 | 20 20 2f 2a 20 62 75 69 |tr;.. | /* bui|
|00004410| 6c 64 20 74 68 65 20 66 | 69 6c 65 6e 61 6d 65 20 |ld the f|ilename |
|00004420| 2a 2f 0a 20 20 20 20 20 | 73 70 72 69 6e 74 66 28 |*/. |sprintf(|
|00004430| 66 6c 6e 61 6d 65 2c 20 | 4c 49 53 54 5f 46 49 4c |flname, |LIST_FIL|
|00004440| 45 5f 44 49 52 20 22 25 | 73 2e 6c 69 73 74 22 2c |E_DIR "%|s.list",|
|00004450| 20 6c 69 73 74 6e 61 6d | 65 29 3b 0a 0a 20 20 20 | listnam|e);.. |
|00004460| 20 20 2f 2a 20 6f 70 65 | 6e 20 66 69 6c 65 20 66 | /* ope|n file f|
|00004470| 6f 72 20 72 65 61 64 69 | 6e 67 20 2a 2f 0a 20 20 |or readi|ng */. |
|00004480| 20 20 20 66 70 20 3d 20 | 66 6f 70 65 6e 28 66 6c | fp = |fopen(fl|
|00004490| 6e 61 6d 65 2c 20 22 72 | 22 29 3b 0a 0a 20 20 20 |name, "r|");.. |
|000044a0| 20 20 2f 2a 20 66 69 6c | 65 20 6e 6f 74 20 66 6f | /* fil|e not fo|
|000044b0| 75 6e 64 20 70 72 6f 62 | 61 62 6c 79 20 6d 65 61 |und prob|ably mea|
|000044c0| 6e 73 20 61 6e 20 6f 6c | 64 20 70 6f 6c 6c 20 55 |ns an ol|d poll U|
|000044d0| 52 4c 2c 20 73 6f 20 6a | 75 73 74 20 64 69 73 70 |RL, so j|ust disp|
|000044e0| 6c 61 79 20 2a 2f 0a 20 | 20 20 20 20 69 66 20 28 |lay */. | if (|
|000044f0| 66 70 20 3d 3d 20 4e 55 | 4c 4c 29 20 7b 20 64 69 |fp == NU|LL) { di|
|00004500| 73 70 5f 6d 61 69 6e 5f | 70 61 67 65 28 31 29 3b |sp_main_|page(1);|
|00004510| 20 65 78 69 74 28 30 29 | 3b 20 7d 0a 0a 20 20 20 | exit(0)|; }.. |
|00004520| 20 20 66 67 65 74 73 28 | 71 68 65 61 64 65 72 2c | fgets(|qheader,|
|00004530| 20 42 55 46 5f 4c 45 4e | 2c 20 66 70 29 3b 20 73 | BUF_LEN|, fp); s|
|00004540| 74 72 69 70 5f 65 6e 64 | 5f 63 72 28 71 68 65 61 |trip_end|_cr(qhea|
|00004550| 64 65 72 29 3b 0a 20 20 | 20 20 20 69 66 20 28 66 |der);. | if (f|
|00004560| 65 72 72 6f 72 28 66 70 | 29 29 20 65 72 72 5f 6d |error(fp|)) err_m|
|00004570| 73 67 28 22 45 72 72 6f | 72 20 72 65 61 64 69 6e |sg("Erro|r readin|
|00004580| 67 20 6c 69 73 74 20 69 | 6e 70 75 74 20 66 69 6c |g list i|nput fil|
|00004590| 65 3a 20 22 2c 20 66 6c | 6e 61 6d 65 29 3b 0a 0a |e: ", fl|name);..|
|000045a0| 20 20 20 20 20 66 67 65 | 74 73 28 71 74 69 74 6c | fge|ts(qtitl|
|000045b0| 65 2c 20 42 55 46 5f 4c | 45 4e 2c 20 66 70 29 3b |e, BUF_L|EN, fp);|
|000045c0| 20 73 74 72 69 70 5f 65 | 6e 64 5f 63 72 28 71 74 | strip_e|nd_cr(qt|
|000045d0| 69 74 6c 65 29 3b 0a 20 | 20 20 20 20 69 66 20 28 |itle);. | if (|
|000045e0| 66 65 72 72 6f 72 28 66 | 70 29 29 20 65 72 72 5f |ferror(f|p)) err_|
|000045f0| 6d 73 67 28 22 45 72 72 | 6f 72 20 72 65 61 64 69 |msg("Err|or readi|
|00004600| 6e 67 20 6c 69 73 74 20 | 69 6e 70 75 74 20 66 69 |ng list |input fi|
|00004610| 6c 65 3a 20 22 2c 20 66 | 6c 6e 61 6d 65 29 3b 0a |le: ", f|lname);.|
|00004620| 0a 20 20 20 20 20 66 73 | 63 61 6e 66 28 66 70 2c |. fs|canf(fp,|
|00004630| 20 22 25 64 5c 6e 25 64 | 5c 6e 25 64 5c 6e 25 64 | "%d\n%d|\n%d\n%d|
|00004640| 5c 6e 25 64 5c 6e 22 2c | 20 26 69 61 64 64 5f 66 |\n%d\n",| &iadd_f|
|00004650| 6c 61 67 2c 20 26 69 76 | 70 6c 75 73 5f 66 6c 61 |lag, &iv|plus_fla|
|00004660| 67 2c 20 0a 20 20 20 20 | 20 20 20 26 69 76 6d 69 |g, . | &ivmi|
|00004670| 6e 75 73 5f 66 6c 61 67 | 2c 20 26 69 73 6f 72 74 |nus_flag|, &isort|
|00004680| 5f 66 6c 61 67 2c 20 26 | 69 64 63 6e 74 5f 66 6c |_flag, &|idcnt_fl|
|00004690| 61 67 29 3b 0a 0a 20 20 | 20 20 20 66 67 65 74 73 |ag);.. | fgets|
|000046a0| 28 76 70 6c 75 73 5f 67 | 69 66 2c 20 42 55 46 5f |(vplus_g|if, BUF_|
|000046b0| 4c 45 4e 2c 20 66 70 29 | 3b 20 73 74 72 69 70 5f |LEN, fp)|; strip_|
|000046c0| 65 6e 64 5f 63 72 28 76 | 70 6c 75 73 5f 67 69 66 |end_cr(v|plus_gif|
|000046d0| 29 3b 0a 20 20 20 20 20 | 66 67 65 74 73 28 76 6d |);. |fgets(vm|
|000046e0| 69 6e 75 73 5f 67 69 66 | 2c 20 42 55 46 5f 4c 45 |inus_gif|, BUF_LE|
|000046f0| 4e 2c 20 66 70 29 3b 20 | 73 74 72 69 70 5f 65 6e |N, fp); |strip_en|
|00004700| 64 5f 63 72 28 76 6d 69 | 6e 75 73 5f 67 69 66 29 |d_cr(vmi|nus_gif)|
|00004710| 3b 0a 20 20 20 20 20 66 | 67 65 74 73 28 61 64 64 |;. f|gets(add|
|00004720| 5f 67 69 66 2c 20 42 55 | 46 5f 4c 45 4e 2c 20 66 |_gif, BU|F_LEN, f|
|00004730| 70 29 3b 20 73 74 72 69 | 70 5f 65 6e 64 5f 63 72 |p); stri|p_end_cr|
|00004740| 28 61 64 64 5f 67 69 66 | 29 3b 0a 0a 20 20 20 20 |(add_gif|);.. |
|00004750| 20 66 73 63 61 6e 66 28 | 66 70 2c 20 22 25 64 5c | fscanf(|fp, "%d\|
|00004760| 6e 22 2c 20 26 6e 69 74 | 65 6d 73 29 3b 0a 20 20 |n", &nit|ems);. |
|00004770| 20 20 20 69 66 20 28 28 | 6e 69 74 65 6d 73 20 3c | if ((|nitems <|
|00004780| 20 4d 49 4e 5f 49 54 45 | 4d 53 29 20 7c 7c 20 28 | MIN_ITE|MS) || (|
|00004790| 6e 69 74 65 6d 73 20 3e | 20 4d 41 58 5f 49 54 45 |nitems >| MAX_ITE|
|000047a0| 4d 53 29 29 0a 20 20 20 | 20 20 20 20 65 72 72 5f |MS)). | err_|
|000047b0| 6d 73 67 28 22 49 6e 76 | 61 6c 69 64 20 6e 75 6d |msg("Inv|alid num|
|000047c0| 62 65 72 20 6f 66 20 69 | 74 65 6d 73 20 69 6e 20 |ber of i|tems in |
|000047d0| 6c 69 73 74 20 69 6e 70 | 75 74 20 66 69 6c 65 3a |list inp|ut file:|
|000047e0| 20 22 2c 20 66 6c 6e 61 | 6d 65 29 3b 0a 20 20 20 | ", flna|me);. |
|000047f0| 20 0a 20 20 20 20 20 69 | 66 20 28 66 65 72 72 6f | . i|f (ferro|
|00004800| 72 28 66 70 29 29 20 65 | 72 72 5f 6d 73 67 28 22 |r(fp)) e|rr_msg("|
|00004810| 45 72 72 6f 72 20 72 65 | 61 64 69 6e 67 20 69 6e |Error re|ading in|
|00004820| 66 6f 20 66 72 6f 6d 20 | 6c 69 73 74 20 66 69 6c |fo from |list fil|
|00004830| 65 3a 20 22 2c 20 66 6c | 6e 61 6d 65 29 3b 0a 20 |e: ", fl|name);. |
|00004840| 20 20 20 20 69 66 20 28 | 66 65 6f 66 28 66 70 29 | if (|feof(fp)|
|00004850| 29 20 65 72 72 5f 6d 73 | 67 28 22 45 6e 64 20 6f |) err_ms|g("End o|
|00004860| 66 20 66 69 6c 65 20 72 | 65 61 64 69 6e 67 20 69 |f file r|eading i|
|00004870| 6e 66 6f 20 66 72 6f 6d | 20 6c 69 73 74 20 66 69 |nfo from| list fi|
|00004880| 6c 65 3a 20 22 2c 20 66 | 6c 6e 61 6d 65 29 3b 0a |le: ", f|lname);.|
|00004890| 0a 20 20 20 20 20 66 6f | 72 20 28 69 20 3d 20 30 |. fo|r (i = 0|
|000048a0| 3b 20 69 20 3c 20 6e 69 | 74 65 6d 73 3b 20 69 2b |; i < ni|tems; i+|
|000048b0| 2b 29 20 7b 0a 0a 20 20 | 20 20 20 20 20 66 73 63 |+) {.. | fsc|
|000048c0| 61 6e 66 28 66 70 2c 20 | 22 25 64 5c 6e 22 2c 20 |anf(fp, |"%d\n", |
|000048d0| 26 62 6c 69 73 74 5b 69 | 5d 2e 6e 76 6f 74 65 73 |&blist[i|].nvotes|
|000048e0| 29 3b 0a 20 20 20 20 20 | 20 0a 20 20 20 20 20 20 |);. | . |
|000048f0| 20 66 67 65 74 73 28 62 | 6c 69 73 74 5b 69 5d 2e | fgets(b|list[i].|
|00004900| 6e 61 6d 65 2c 20 4d 41 | 58 5f 4e 41 4d 45 5f 4c |name, MA|X_NAME_L|
|00004910| 45 4e 2c 20 66 70 29 3b | 0a 20 20 20 20 20 20 20 |EN, fp);|. |
|00004920| 73 74 72 69 70 5f 65 6e | 64 5f 63 72 28 62 6c 69 |strip_en|d_cr(bli|
|00004930| 73 74 5b 69 5d 2e 6e 61 | 6d 65 29 3b 0a 0a 20 20 |st[i].na|me);.. |
|00004940| 20 20 20 20 20 69 66 20 | 28 66 65 72 72 6f 72 28 | if |(ferror(|
|00004950| 66 70 29 29 20 65 72 72 | 5f 6d 73 67 28 22 45 72 |fp)) err|_msg("Er|
|00004960| 72 6f 72 20 72 65 61 64 | 69 6e 67 20 69 74 65 6d |ror read|ing item|
|00004970| 73 20 66 72 6f 6d 20 6c | 69 73 74 20 66 69 6c 65 |s from l|ist file|
|00004980| 3a 20 22 2c 20 66 6c 6e | 61 6d 65 29 3b 0a 20 20 |: ", fln|ame);. |
|00004990| 20 20 20 20 20 69 66 20 | 28 66 65 6f 66 28 66 70 | if |(feof(fp|
|000049a0| 29 29 20 65 72 72 5f 6d | 73 67 28 22 45 6e 64 20 |)) err_m|sg("End |
|000049b0| 6f 66 20 66 69 6c 65 20 | 72 65 61 64 69 6e 67 20 |of file |reading |
|000049c0| 69 74 65 6d 73 20 66 72 | 6f 6d 20 6c 69 73 74 20 |items fr|om list |
|000049d0| 66 69 6c 65 3a 20 22 2c | 20 66 6c 6e 61 6d 65 29 |file: ",| flname)|
|000049e0| 3b 0a 0a 20 20 20 20 20 | 7d 0a 0a 20 20 20 20 20 |;.. |}.. |
|000049f0| 66 73 63 61 6e 66 28 66 | 70 2c 20 22 25 64 5c 6e |fscanf(f|p, "%d\n|
|00004a00| 22 2c 20 26 74 6f 74 61 | 6c 6e 75 6d 76 6f 74 65 |", &tota|lnumvote|
|00004a10| 73 29 3b 0a 0a 20 20 20 | 20 20 2f 2a 20 6e 75 6d |s);.. | /* num|
|00004a20| 62 65 72 20 6f 66 20 76 | 6f 74 65 72 73 20 74 6f |ber of v|oters to|
|00004a30| 20 6c 6f 67 20 2a 2f 0a | 20 20 20 20 20 66 73 63 | log */.| fsc|
|00004a40| 61 6e 66 28 66 70 2c 20 | 22 25 64 5c 6e 22 2c 20 |anf(fp, |"%d\n", |
|00004a50| 26 6e 75 6d 76 6f 74 65 | 72 6c 6f 67 29 3b 0a 0a |&numvote|rlog);..|
|00004a60| 20 20 20 20 20 69 66 20 | 28 6e 75 6d 76 6f 74 65 | if |(numvote|
|00004a70| 72 6c 6f 67 20 3e 20 30 | 29 20 7b 20 0a 20 20 20 |rlog > 0|) { . |
|00004a80| 20 20 0a 20 20 20 20 20 | 20 20 2f 2a 20 61 6c 6c | . | /* all|
|00004a90| 6f 63 61 74 65 20 6d 65 | 6d 6f 72 79 20 66 6f 72 |ocate me|mory for|
|00004aa0| 20 74 68 65 20 6c 69 73 | 74 20 6f 66 20 76 6f 74 | the lis|t of vot|
|00004ab0| 65 72 73 20 2a 2f 0a 20 | 20 20 20 20 20 20 69 66 |ers */. | if|
|00004ac0| 20 28 28 76 6c 6f 67 5f | 70 74 72 30 20 3d 20 6d | ((vlog_|ptr0 = m|
|00004ad0| 61 6c 6c 6f 63 28 6e 75 | 6d 76 6f 74 65 72 6c 6f |alloc(nu|mvoterlo|
|00004ae0| 67 20 2a 20 4d 41 58 5f | 56 4f 54 45 52 5f 4c 45 |g * MAX_|VOTER_LE|
|00004af0| 4e 29 29 20 3d 3d 20 4e | 55 4c 4c 29 0a 20 20 20 |N)) == N|ULL). |
|00004b00| 20 20 20 20 20 20 65 72 | 72 5f 6d 73 67 28 22 45 | er|r_msg("E|
|00004b10| 72 72 6f 72 20 61 74 74 | 65 6d 70 74 69 6e 67 20 |rror att|empting |
|00004b20| 74 6f 20 61 6c 6c 6f 63 | 61 74 65 20 6d 65 6d 6f |to alloc|ate memo|
|00004b30| 72 79 20 66 6f 72 20 76 | 6f 74 65 72 20 6c 6f 67 |ry for v|oter log|
|00004b40| 2e 22 2c 20 22 22 29 3b | 0a 0a 20 20 20 20 20 20 |.", "");|.. |
|00004b50| 20 66 6f 72 20 28 76 6c | 6f 67 5f 70 74 72 3d 76 | for (vl|og_ptr=v|
|00004b60| 6c 6f 67 5f 70 74 72 30 | 2c 20 69 3d 30 3b 20 69 |log_ptr0|, i=0; i|
|00004b70| 20 3c 20 6e 75 6d 76 6f | 74 65 72 6c 6f 67 3b 20 | < numvo|terlog; |
|00004b80| 69 2b 2b 29 20 7b 0a 0a | 20 20 20 20 20 20 20 20 |i++) {..| |
|00004b90| 20 2f 2a 20 67 65 74 20 | 74 68 65 20 6c 61 73 74 | /* get |the last|
|00004ba0| 20 70 65 72 73 6f 6e 73 | 20 74 6f 20 76 6f 74 65 | persons| to vote|
|00004bb0| 20 2a 2f 0a 20 20 20 20 | 20 20 20 20 20 66 67 65 | */. | fge|
|00004bc0| 74 73 28 28 63 68 61 72 | 20 2a 29 20 76 6c 6f 67 |ts((char| *) vlog|
|00004bd0| 5f 70 74 72 2c 20 42 55 | 46 5f 4c 45 4e 2c 20 66 |_ptr, BU|F_LEN, f|
|00004be0| 70 29 3b 20 73 74 72 69 | 70 5f 65 6e 64 5f 63 72 |p); stri|p_end_cr|
|00004bf0| 28 28 63 68 61 72 20 2a | 29 20 76 6c 6f 67 5f 70 |((char *|) vlog_p|
|00004c00| 74 72 29 3b 0a 0a 20 20 | 20 20 20 20 20 20 20 2f |tr);.. | /|
|00004c10| 2a 20 73 61 76 65 20 6c | 61 73 74 20 76 6f 74 65 |* save l|ast vote|
|00004c20| 72 20 69 6e 20 61 20 6e | 6f 72 6d 61 6c 20 73 74 |r in a n|ormal st|
|00004c30| 72 69 6e 67 20 76 61 72 | 69 61 62 6c 65 20 2a 2f |ring var|iable */|
|00004c40| 0a 20 20 20 20 20 20 20 | 20 20 73 74 72 63 70 79 |. | strcpy|
|00004c50| 28 6c 61 73 74 76 6f 74 | 65 72 2c 20 28 63 68 61 |(lastvot|er, (cha|
|00004c60| 72 20 2a 29 20 76 6c 6f | 67 5f 70 74 72 29 3b 0a |r *) vlo|g_ptr);.|
|00004c70| 0a 20 20 20 20 20 20 20 | 20 2f 2a 20 69 6e 63 72 |. | /* incr|
|00004c80| 65 6d 65 6e 74 20 74 6f | 20 74 68 65 20 6e 65 78 |ement to| the nex|
|00004c90| 74 20 76 6f 74 65 72 20 | 73 6c 6f 74 20 2a 2f 0a |t voter |slot */.|
|00004ca0| 20 20 20 20 20 20 20 20 | 20 76 6c 6f 67 5f 70 74 | | vlog_pt|
|00004cb0| 72 2b 2b 3b 0a 20 20 20 | 20 20 20 0a 20 20 20 20 |r++;. | . |
|00004cc0| 20 20 20 20 20 69 66 20 | 28 66 65 72 72 6f 72 28 | if |(ferror(|
|00004cd0| 66 70 29 29 20 65 72 72 | 5f 6d 73 67 28 22 45 72 |fp)) err|_msg("Er|
|00004ce0| 72 6f 72 20 72 65 61 64 | 69 6e 67 20 76 6f 74 65 |ror read|ing vote|
|00004cf0| 72 73 20 66 72 6f 6d 20 | 6c 69 73 74 20 66 69 6c |rs from |list fil|
|00004d00| 65 3a 20 22 2c 20 66 6c | 6e 61 6d 65 29 3b 0a 20 |e: ", fl|name);. |
|00004d10| 20 20 20 20 20 20 20 20 | 69 66 20 28 66 65 6f 66 | |if (feof|
|00004d20| 28 66 70 29 29 20 65 72 | 72 5f 6d 73 67 28 22 45 |(fp)) er|r_msg("E|
|00004d30| 6e 64 20 6f 66 20 66 69 | 6c 65 20 72 65 61 64 69 |nd of fi|le readi|
|00004d40| 6e 67 20 76 6f 74 65 72 | 73 20 66 72 6f 6d 20 6c |ng voter|s from l|
|00004d50| 69 73 74 20 66 69 6c 65 | 3a 20 22 2c 20 66 6c 6e |ist file|: ", fln|
|00004d60| 61 6d 65 29 3b 0a 0a 20 | 20 20 20 20 20 20 7d 0a |ame);.. | }.|
|00004d70| 20 20 20 20 20 7d 20 20 | 20 20 0a 20 20 20 20 20 | } | . |
|00004d80| 20 0a 20 20 20 20 20 66 | 63 6c 6f 73 65 28 66 70 | . f|close(fp|
|00004d90| 29 3b 0a 0a 20 20 20 7d | 0a 0a 2f 2a 20 2d 2d 2d |);.. }|../* ---|
|00004da0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004db0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004dc0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004dd0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004de0| 2d 2d 2d 2d 2d 2d 2d 2d | 0a 20 20 20 77 72 5f 6c |--------|. wr_l|
|00004df0| 69 73 74 3a 20 77 72 69 | 74 65 20 6c 69 73 74 20 |ist: wri|te list |
|00004e00| 64 61 74 61 20 74 6f 20 | 66 69 6c 65 0a 20 20 20 |data to |file. |
|00004e10| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004e20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004e30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004e40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004e50| 2d 2d 2d 2d 2d 2d 2d 2d | 20 2a 2f 0a 20 20 20 76 |--------| */. v|
|00004e60| 6f 69 64 20 77 72 5f 6c | 69 73 74 28 63 68 61 72 |oid wr_l|ist(char|
|00004e70| 20 2a 6c 69 73 74 6e 61 | 6d 65 29 20 7b 0a 0a 20 | *listna|me) {.. |
|00004e80| 20 20 20 20 63 68 61 72 | 20 66 6c 6e 61 6d 65 5b | char| flname[|
|00004e90| 31 32 38 5d 3b 0a 20 20 | 20 20 20 46 49 4c 45 20 |128];. | FILE |
|00004ea0| 2a 66 70 3b 0a 20 20 20 | 20 20 69 6e 74 20 69 3b |*fp;. | int i;|
|00004eb0| 0a 20 20 20 20 20 76 6f | 74 65 72 6c 6f 67 5f 65 |. vo|terlog_e|
|00004ec0| 6e 74 72 79 20 2a 76 6c | 6f 67 5f 70 74 72 3b 0a |ntry *vl|og_ptr;.|
|00004ed0| 0a 20 20 20 20 20 69 66 | 20 28 28 6e 69 74 65 6d |. if| ((nitem|
|00004ee0| 73 20 3c 20 4d 49 4e 5f | 49 54 45 4d 53 29 20 7c |s < MIN_|ITEMS) ||
|00004ef0| 7c 20 28 6e 69 74 65 6d | 73 20 3e 20 4d 41 58 5f || (nitem|s > MAX_|
|00004f00| 49 54 45 4d 53 29 29 0a | 20 20 20 20 20 20 20 65 |ITEMS)).| e|
|00004f10| 72 72 5f 6d 73 67 28 22 | 49 6e 76 61 6c 69 64 20 |rr_msg("|Invalid |
|00004f20| 6e 75 6d 62 65 72 20 6f | 66 20 69 74 65 6d 73 20 |number o|f items |
|00004f30| 74 72 79 69 6e 67 20 74 | 6f 20 77 72 69 74 65 20 |trying t|o write |
|00004f40| 6c 69 73 74 20 66 69 6c | 65 2e 22 2c 20 22 22 29 |list fil|e.", "")|
|00004f50| 3b 0a 0a 20 20 20 20 20 | 2f 2a 20 62 75 69 6c 64 |;.. |/* build|
|00004f60| 20 74 68 65 20 66 69 6c | 65 6e 61 6d 65 20 2a 2f | the fil|ename */|
|00004f70| 0a 20 20 20 20 20 73 70 | 72 69 6e 74 66 28 66 6c |. sp|rintf(fl|
|00004f80| 6e 61 6d 65 2c 20 4c 49 | 53 54 5f 46 49 4c 45 5f |name, LI|ST_FILE_|
|00004f90| 44 49 52 20 22 25 73 2e | 6c 69 73 74 22 2c 20 6c |DIR "%s.|list", l|
|00004fa0| 69 73 74 6e 61 6d 65 29 | 3b 0a 0a 20 20 20 20 20 |istname)|;.. |
|00004fb0| 69 66 20 28 28 66 70 20 | 3d 20 66 6f 70 65 6e 28 |if ((fp |= fopen(|
|00004fc0| 66 6c 6e 61 6d 65 2c 20 | 22 77 22 29 29 20 3d 3d |flname, |"w")) ==|
|00004fd0| 20 4e 55 4c 4c 29 0a 20 | 20 20 20 20 20 20 65 72 | NULL). | er|
|00004fe0| 72 5f 6d 73 67 28 22 45 | 72 72 6f 72 20 6f 70 65 |r_msg("E|rror ope|
|00004ff0| 6e 69 6e 67 20 6c 69 73 | 74 20 66 69 6c 65 20 66 |ning lis|t file f|
|00005000| 6f 72 20 77 72 69 74 69 | 6e 67 3a 22 2c 20 66 6c |or writi|ng:", fl|
|00005010| 6e 61 6d 65 29 3b 0a 0a | 20 20 20 20 20 66 70 72 |name);..| fpr|
|00005020| 69 6e 74 66 28 66 70 2c | 20 22 25 73 5c 6e 25 73 |intf(fp,| "%s\n%s|
|00005030| 5c 6e 22 2c 20 71 68 65 | 61 64 65 72 2c 20 71 74 |\n", qhe|ader, qt|
|00005040| 69 74 6c 65 29 3b 0a 20 | 20 20 20 20 66 70 72 69 |itle);. | fpri|
|00005050| 6e 74 66 28 66 70 2c 20 | 22 25 64 5c 6e 25 64 5c |ntf(fp, |"%d\n%d\|
|00005060| 6e 25 64 5c 6e 25 64 5c | 6e 25 64 5c 6e 22 2c 20 |n%d\n%d\|n%d\n", |
|00005070| 69 61 64 64 5f 66 6c 61 | 67 2c 20 69 76 70 6c 75 |iadd_fla|g, ivplu|
|00005080| 73 5f 66 6c 61 67 2c 0a | 20 20 20 20 20 20 20 69 |s_flag,.| i|
|00005090| 76 6d 69 6e 75 73 5f 66 | 6c 61 67 2c 20 69 73 6f |vminus_f|lag, iso|
|000050a0| 72 74 5f 66 6c 61 67 2c | 20 69 64 63 6e 74 5f 66 |rt_flag,| idcnt_f|
|000050b0| 6c 61 67 29 3b 0a 0a 20 | 20 20 20 20 66 70 72 69 |lag);.. | fpri|
|000050c0| 6e 74 66 28 66 70 2c 20 | 22 25 73 5c 6e 25 73 5c |ntf(fp, |"%s\n%s\|
|000050d0| 6e 25 73 5c 6e 22 2c 20 | 76 70 6c 75 73 5f 67 69 |n%s\n", |vplus_gi|
|000050e0| 66 2c 20 76 6d 69 6e 75 | 73 5f 67 69 66 2c 20 61 |f, vminu|s_gif, a|
|000050f0| 64 64 5f 67 69 66 29 3b | 0a 0a 20 20 20 20 20 66 |dd_gif);|.. f|
|00005100| 70 72 69 6e 74 66 28 66 | 70 2c 20 22 25 64 5c 6e |printf(f|p, "%d\n|
|00005110| 22 2c 20 6e 69 74 65 6d | 73 29 3b 0a 20 20 20 20 |", nitem|s);. |
|00005120| 20 66 6f 72 20 28 69 20 | 3d 20 30 3b 20 69 20 3c | for (i |= 0; i <|
|00005130| 20 6e 69 74 65 6d 73 3b | 20 69 2b 2b 29 20 7b 0a | nitems;| i++) {.|
|00005140| 20 20 20 20 20 20 20 66 | 70 72 69 6e 74 66 28 66 | f|printf(f|
|00005150| 70 2c 20 22 25 64 5c 6e | 25 73 5c 6e 22 2c 20 62 |p, "%d\n|%s\n", b|
|00005160| 6c 69 73 74 5b 69 5d 2e | 6e 76 6f 74 65 73 2c 20 |list[i].|nvotes, |
|00005170| 62 6c 69 73 74 5b 69 5d | 2e 6e 61 6d 65 29 3b 0a |blist[i]|.name);.|
|00005180| 20 20 20 20 20 20 20 69 | 66 20 28 66 65 72 72 6f | i|f (ferro|
|00005190| 72 28 66 70 29 29 20 65 | 72 72 5f 6d 73 67 28 22 |r(fp)) e|rr_msg("|
|000051a0| 45 72 72 6f 72 20 77 72 | 69 74 69 6e 67 20 69 74 |Error wr|iting it|
|000051b0| 65 6d 73 20 74 6f 20 6c | 69 73 74 20 66 69 6c 65 |ems to l|ist file|
|000051c0| 3a 20 22 2c 20 66 6c 6e | 61 6d 65 29 3b 0a 20 20 |: ", fln|ame);. |
|000051d0| 20 20 20 7d 0a 20 20 20 | 20 0a 20 20 20 20 20 66 | }. | . f|
|000051e0| 70 72 69 6e 74 66 28 66 | 70 2c 20 22 25 64 5c 6e |printf(f|p, "%d\n|
|000051f0| 22 2c 20 74 6f 74 61 6c | 6e 75 6d 76 6f 74 65 73 |", total|numvotes|
|00005200| 29 3b 0a 20 20 20 20 0a | 20 20 20 20 20 66 70 72 |);. .| fpr|
|00005210| 69 6e 74 66 28 66 70 2c | 20 22 25 64 5c 6e 22 2c |intf(fp,| "%d\n",|
|00005220| 20 6e 75 6d 76 6f 74 65 | 72 6c 6f 67 29 3b 0a 20 | numvote|rlog);. |
|00005230| 20 20 20 20 66 6f 72 20 | 28 76 6c 6f 67 5f 70 74 | for |(vlog_pt|
|00005240| 72 3d 76 6c 6f 67 5f 70 | 74 72 30 2c 20 69 3d 30 |r=vlog_p|tr0, i=0|
|00005250| 3b 20 69 20 3c 20 6e 75 | 6d 76 6f 74 65 72 6c 6f |; i < nu|mvoterlo|
|00005260| 67 3b 20 69 2b 2b 29 20 | 7b 0a 20 20 20 20 20 20 |g; i++) |{. |
|00005270| 20 66 70 72 69 6e 74 66 | 28 66 70 2c 20 22 25 73 | fprintf|(fp, "%s|
|00005280| 5c 6e 22 2c 20 28 63 68 | 61 72 20 2a 29 20 76 6c |\n", (ch|ar *) vl|
|00005290| 6f 67 5f 70 74 72 29 3b | 0a 20 20 20 20 20 20 20 |og_ptr);|. |
|000052a0| 76 6c 6f 67 5f 70 74 72 | 2b 2b 3b 0a 20 20 20 20 |vlog_ptr|++;. |
|000052b0| 20 7d 0a 0a 20 20 20 20 | 20 66 70 72 69 6e 74 66 | }.. | fprintf|
|000052c0| 28 66 70 2c 20 22 5c 6e | 22 29 3b 0a 0a 20 20 20 |(fp, "\n|");.. |
|000052d0| 20 20 66 63 6c 6f 73 65 | 28 66 70 29 3b 0a 0a 20 | fclose|(fp);.. |
|000052e0| 20 20 7d 0a 0a 2f 2a 20 | 2d 2d 2d 2d 2d 2d 2d 2d | }../* |--------|
|000052f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005300| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005310| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005320| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 0a 20 |--------|------. |
|00005330| 20 20 77 72 5f 6c 6f 67 | 3a 20 77 72 69 74 65 20 | wr_log|: write |
|00005340| 69 6e 66 6f 20 74 6f 20 | 74 68 65 20 6c 6f 67 20 |info to |the log |
|00005350| 66 69 6c 65 0a 20 20 20 | 2d 2d 2d 2d 2d 2d 2d 2d |file. |--------|
|00005360| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005370| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005380| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005390| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 20 2a 2f 0a 20 |--------|--- */. |
|000053a0| 20 20 76 6f 69 64 20 77 | 72 5f 6c 6f 67 28 63 68 | void w|r_log(ch|
|000053b0| 61 72 20 2a 73 31 2c 20 | 63 68 61 72 20 2a 73 32 |ar *s1, |char *s2|
|000053c0| 29 20 7b 0a 0a 20 20 20 | 20 20 63 68 61 72 20 64 |) {.. | char d|
|000053d0| 73 74 72 5b 31 32 38 5d | 3b 0a 20 20 20 20 20 46 |str[128]|;. F|
|000053e0| 49 4c 45 20 2a 66 70 5f | 6c 6f 67 3b 0a 20 20 20 |ILE *fp_|log;. |
|000053f0| 20 20 73 74 72 75 63 74 | 20 74 6d 20 2a 70 74 72 | struct| tm *ptr|
|00005400| 3b 0a 20 20 20 20 20 74 | 69 6d 65 5f 74 20 6c 74 |;. t|ime_t lt|
|00005410| 3b 0a 0a 20 20 20 20 20 | 2f 2a 20 2e 2e 2e 67 65 |;.. |/* ...ge|
|00005420| 6e 65 72 61 74 65 20 64 | 61 74 65 20 74 6f 20 70 |nerate d|ate to p|
|00005430| 75 74 20 69 6e 20 74 68 | 65 20 65 72 72 6f 72 20 |ut in th|e error |
|00005440| 6c 6f 67 2e 2e 2e 20 2a | 2f 0a 20 20 20 20 20 6c |log... *|/. l|
|00005450| 74 20 3d 20 74 69 6d 65 | 28 4e 55 4c 4c 29 3b 0a |t = time|(NULL);.|
|00005460| 20 20 20 20 20 70 74 72 | 20 3d 20 6c 6f 63 61 6c | ptr| = local|
|00005470| 74 69 6d 65 28 26 6c 74 | 29 3b 0a 20 20 20 20 20 |time(<|);. |
|00005480| 73 74 72 66 74 69 6d 65 | 28 64 73 74 72 2c 20 34 |strftime|(dstr, 4|
|00005490| 30 2c 20 22 25 42 20 25 | 64 2c 20 25 59 20 61 74 |0, "%B %|d, %Y at|
|000054a0| 20 25 48 3a 25 4d 3a 25 | 53 22 2c 20 70 74 72 29 | %H:%M:%|S", ptr)|
|000054b0| 3b 0a 0a 20 20 20 20 20 | 66 70 5f 6c 6f 67 20 3d |;.. |fp_log =|
|000054c0| 20 66 6f 70 65 6e 28 4c | 4f 47 5f 46 49 4c 45 2c | fopen(L|OG_FILE,|
|000054d0| 20 22 61 22 29 3b 0a 0a | 20 20 20 20 20 69 66 20 | "a");..| if |
|000054e0| 28 66 70 5f 6c 6f 67 20 | 21 3d 20 4e 55 4c 4c 29 |(fp_log |!= NULL)|
|000054f0| 20 7b 0a 20 20 20 20 20 | 20 20 66 70 72 69 6e 74 | {. | fprint|
|00005500| 66 28 66 70 5f 6c 6f 67 | 2c 20 22 25 73 2c 20 25 |f(fp_log|, "%s, %|
|00005510| 73 2c 20 25 73 20 25 73 | 5c 6e 22 2c 20 68 61 2c |s, %s %s|\n", ha,|
|00005520| 20 64 73 74 72 2c 20 73 | 31 2c 20 73 32 29 3b 0a | dstr, s|1, s2);.|
|00005530| 20 20 20 20 20 7d 0a 0a | 20 20 20 20 20 66 63 6c | }..| fcl|
|00005540| 6f 73 65 28 66 70 5f 6c | 6f 67 29 3b 0a 0a 20 20 |ose(fp_l|og);.. |
|00005550| 20 7d 0a 0a 2f 2a 20 2d | 2d 2d 2d 2d 2d 2d 2d 2d | }../* -|--------|
|00005560| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005570| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005580| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005590| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000055a0| 2d 2d 0a 20 20 20 62 61 | 64 5f 66 6f 72 6d 5f 72 |--. ba|d_form_r|
|000055b0| 65 73 3a 20 62 61 64 20 | 66 6f 72 6d 20 72 65 73 |es: bad |form res|
|000055c0| 75 6c 74 73 20 72 65 74 | 75 72 6e 65 64 20 62 79 |ults ret|urned by|
|000055d0| 20 74 68 65 69 72 20 62 | 72 6f 77 73 65 72 0a 20 | their b|rowser. |
|000055e0| 20 20 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | ------|--------|
|000055f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005600| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005610| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005620| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 20 2a 2f 0a 20 20 |--------|-- */. |
|00005630| 20 76 6f 69 64 20 62 61 | 64 5f 66 6f 72 6d 5f 72 | void ba|d_form_r|
|00005640| 65 73 28 29 20 7b 0a 0a | 20 20 20 20 20 68 74 6d |es() {..| htm|
|00005650| 6c 5f 68 65 61 64 65 72 | 28 22 3a 20 46 6f 72 6d |l_header|(": Form|
|00005660| 20 49 6e 70 75 74 20 45 | 72 72 6f 72 22 2c 20 22 | Input E|rror", "|
|00005670| 22 29 3b 0a 20 20 20 20 | 0a 20 20 20 20 20 70 72 |");. |. pr|
|00005680| 69 6e 74 66 28 22 54 68 | 65 20 66 6f 72 6d 20 72 |intf("Th|e form r|
|00005690| 65 73 75 6c 74 73 20 77 | 65 72 65 20 72 65 74 75 |esults w|ere retu|
|000056a0| 72 6e 65 64 20 69 6e 63 | 6f 72 72 65 63 74 6c 79 |rned inc|orrectly|
|000056b0| 20 62 79 20 79 6f 75 72 | 20 62 72 6f 77 73 65 72 | by your| browser|
|000056c0| 2e 5c 6e 22 0a 20 20 20 | 20 20 20 20 22 59 6f 75 |.\n". | "You|
|000056d0| 72 20 62 72 6f 77 73 65 | 72 20 6d 61 79 20 6e 6f |r browse|r may no|
|000056e0| 74 20 63 6f 72 72 65 63 | 74 6c 79 20 73 75 70 70 |t correc|tly supp|
|000056f0| 6f 72 74 20 74 68 65 20 | 66 6f 72 6d 20 65 6c 65 |ort the |form ele|
|00005700| 6d 65 6e 74 73 20 28 54 | 45 58 54 20 61 6e 64 5c |ments (T|EXT and\|
|00005710| 6e 22 0a 20 20 20 20 20 | 20 20 22 52 41 44 49 4f |n". | "RADIO|
|00005720| 29 20 75 73 65 64 20 69 | 6e 20 74 68 69 73 20 61 |) used i|n this a|
|00005730| 70 70 6c 69 63 61 74 69 | 6f 6e 5c 6e 3c 50 3e 5c |pplicati|on\n<P>\|
|00005740| 6e 22 29 3b 0a 0a 20 20 | 20 20 20 70 72 69 6e 74 |n");.. | print|
|00005750| 66 28 22 49 66 20 79 6f | 75 20 77 6f 75 6c 64 20 |f("If yo|u would |
|00005760| 6c 69 6b 65 20 74 6f 20 | 72 65 70 6f 72 74 20 74 |like to |report t|
|00005770| 68 65 20 70 72 6f 62 6c | 65 6d 2c 20 73 65 6e 64 |he probl|em, send|
|00005780| 20 65 2d 6d 61 69 6c 20 | 74 6f 20 74 68 65 5c 6e | e-mail |to the\n|
|00005790| 22 0a 20 20 20 20 20 20 | 20 22 6d 61 69 6e 74 61 |". | "mainta|
|000057a0| 69 6e 65 72 73 20 6f 66 | 20 74 68 65 20 22 20 54 |iners of| the " T|
|000057b0| 49 54 4c 45 20 22 20 61 | 74 20 3c 49 3e 22 20 45 |ITLE " a|t <I>" E|
|000057c0| 5f 4d 41 49 4c 20 22 3c | 2f 49 3e 2e 5c 6e 22 29 |_MAIL "<|/I>.\n")|
|000057d0| 3b 0a 0a 20 20 20 20 20 | 65 72 72 6f 72 5f 66 6f |;.. |error_fo|
|000057e0| 6f 74 65 72 28 22 22 29 | 3b 20 65 78 69 74 28 30 |oter("")|; exit(0|
|000057f0| 29 3b 0a 0a 20 20 20 7d | 0a 0a 2f 2a 20 2d 2d 2d |);.. }|../* ---|
|00005800| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005810| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005820| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005830| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005840| 2d 2d 2d 2d 2d 2d 2d 2d | 0a 20 20 20 65 72 72 5f |--------|. err_|
|00005850| 6d 73 67 3a 20 65 72 72 | 6f 72 20 6d 65 73 73 61 |msg: err|or messa|
|00005860| 67 65 73 20 70 61 67 65 | 20 66 6f 72 20 65 72 72 |ges page| for err|
|00005870| 6f 72 73 20 4e 4f 54 20 | 63 61 75 73 65 64 20 62 |ors NOT |caused b|
|00005880| 79 20 75 73 65 72 20 69 | 6e 70 75 74 0a 20 20 20 |y user i|nput. |
|00005890| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000058a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000058b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000058c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000058d0| 2d 2d 2d 2d 2d 2d 2d 2d | 20 2a 2f 0a 20 20 20 76 |--------| */. v|
|000058e0| 6f 69 64 20 65 72 72 5f | 6d 73 67 28 63 68 61 72 |oid err_|msg(char|
|000058f0| 20 2a 73 31 2c 20 63 68 | 61 72 20 2a 73 32 29 20 | *s1, ch|ar *s2) |
|00005900| 7b 0a 0a 20 20 20 20 20 | 68 74 6d 6c 5f 68 65 61 |{.. |html_hea|
|00005910| 64 65 72 28 22 3a 20 46 | 61 74 61 6c 20 53 63 72 |der(": F|atal Scr|
|00005920| 69 70 74 20 45 72 72 6f | 72 22 2c 20 22 22 29 3b |ipt Erro|r", "");|
|00005930| 0a 0a 20 20 20 20 20 70 | 72 69 6e 74 66 28 22 41 |.. p|rintf("A|
|00005940| 6e 20 65 72 72 6f 72 20 | 6f 63 63 75 72 72 65 64 |n error |occurred|
|00005950| 20 69 6e 20 74 68 65 20 | 22 20 54 49 54 4c 45 20 | in the |" TITLE |
|00005960| 22 20 73 63 72 69 70 74 | 2e 20 50 6c 65 61 73 65 |" script|. Please|
|00005970| 20 72 65 70 6f 72 74 5c | 6e 22 0a 20 20 20 20 20 | report\|n". |
|00005980| 20 20 22 74 68 69 73 20 | 70 72 6f 62 6c 65 6d 20 | "this |problem |
|00005990| 74 6f 20 74 68 65 20 6d | 61 69 6e 74 61 69 6e 65 |to the m|aintaine|
|000059a0| 72 73 20 6f 66 20 74 68 | 65 20 22 20 54 49 54 4c |rs of th|e " TITL|
|000059b0| 45 20 22 20 61 74 20 3c | 49 3e 22 0a 20 20 20 20 |E " at <|I>". |
|000059c0| 20 20 20 45 5f 4d 41 49 | 4c 20 22 3c 2f 49 3e 2e | E_MAI|L "</I>.|
|000059d0| 20 54 68 61 6e 6b 20 79 | 6f 75 2e 5c 6e 3c 50 3e | Thank y|ou.\n<P>|
|000059e0| 5c 6e 22 29 3b 0a 0a 20 | 20 20 20 20 70 72 69 6e |\n");.. | prin|
|000059f0| 74 66 28 22 45 72 72 6f | 72 20 4d 65 73 73 61 67 |tf("Erro|r Messag|
|00005a00| 65 3a 20 3c 54 54 3e 3c | 42 3e 25 73 25 73 3c 2f |e: <TT><|B>%s%s</|
|00005a10| 42 3e 3c 2f 54 54 3e 5c | 6e 3c 50 3e 5c 6e 22 2c |B></TT>\|n<P>\n",|
|00005a20| 20 73 31 2c 20 73 32 29 | 3b 0a 0a 20 20 20 20 20 | s1, s2)|;.. |
|00005a30| 70 72 69 6e 74 66 28 22 | 41 6e 79 20 64 61 74 61 |printf("|Any data|
|00005a40| 20 65 6e 74 65 72 65 64 | 20 6d 61 79 20 73 74 69 | entered| may sti|
|00005a50| 6c 6c 20 62 65 20 61 76 | 61 69 6c 61 62 6c 65 20 |ll be av|ailable |
|00005a60| 66 72 6f 6d 20 79 6f 75 | 72 20 76 69 65 77 65 72 |from you|r viewer|
|00005a70| 5c 6e 22 0a 20 20 20 20 | 20 20 20 22 62 79 20 75 |\n". | "by u|
|00005a80| 73 69 6e 67 20 42 41 43 | 4b 20 74 6f 20 72 65 74 |sing BAC|K to ret|
|00005a90| 75 72 6e 20 74 6f 20 74 | 68 65 20 70 72 65 76 69 |urn to t|he previ|
|00005aa0| 6f 75 73 20 66 6f 72 6d | 2e 5c 6e 22 29 3b 0a 0a |ous form|.\n");..|
|00005ab0| 20 20 20 20 20 65 72 72 | 6f 72 5f 66 6f 6f 74 65 | err|or_foote|
|00005ac0| 72 28 22 22 29 3b 20 65 | 78 69 74 28 31 29 3b 0a |r(""); e|xit(1);.|
|00005ad0| 0a 20 20 20 7d 0a 0a 2f | 2a 20 2d 2d 2d 2d 2d 2d |. }../|* ------|
|00005ae0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005af0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005b00| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005b10| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005b20| 2d 2d 2d 2d 2d 0a 20 20 | 20 69 6e 70 75 74 5f 65 |-----. | input_e|
|00005b30| 72 72 3a 20 65 72 72 6f | 72 20 6d 65 73 73 61 67 |rr: erro|r messag|
|00005b40| 65 73 20 63 61 75 73 65 | 64 20 62 79 20 75 73 65 |es cause|d by use|
|00005b50| 72 20 69 6e 70 75 74 0a | 20 20 20 2d 2d 2d 2d 2d |r input.| -----|
|00005b60| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005b70| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005b80| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005b90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00005ba0| 2d 2d 2d 20 2a 2f 0a 20 | 20 20 76 6f 69 64 20 69 |--- */. | void i|
|00005bb0| 6e 70 75 74 5f 65 72 72 | 28 69 6e 74 20 65 72 72 |nput_err|(int err|
|00005bc0| 5f 63 6f 64 65 29 20 7b | 0a 0a 20 20 20 20 20 68 |_code) {|.. h|
|00005bd0| 74 6d 6c 5f 68 65 61 64 | 65 72 28 22 3a 20 49 6e |tml_head|er(": In|
|00005be0| 70 75 74 20 45 72 72 6f | 72 22 2c 20 22 22 29 3b |put Erro|r", "");|
|00005bf0| 0a 0a 20 20 20 20 20 70 | 72 69 6e 74 66 28 45 52 |.. p|rintf(ER|
|00005c00| 52 4f 52 5f 49 4d 47 20 | 22 20 22 29 3b 0a 0a 20 |ROR_IMG |" ");.. |
|00005c10| 20 20 20 20 69 66 20 28 | 65 72 72 5f 63 6f 64 65 | if (|err_code|
|00005c20| 20 3d 3d 20 31 29 20 7b | 0a 0a 20 20 20 20 20 20 | == 1) {|.. |
|00005c30| 20 70 72 69 6e 74 66 28 | 22 54 65 78 74 20 69 6e | printf(|"Text in|
|00005c40| 70 75 74 20 66 69 65 6c | 64 73 20 61 72 65 20 6e |put fiel|ds are n|
|00005c50| 6f 74 20 61 6c 6c 6f 77 | 65 64 20 74 6f 20 63 6f |ot allow|ed to co|
|00005c60| 6e 74 61 69 6e 20 48 54 | 4d 4c 20 74 61 67 73 20 |ntain HT|ML tags |
|00005c70| 6f 72 5c 6e 22 0a 20 20 | 20 20 20 20 20 20 20 22 |or\n". | "|
|00005c80| 74 68 65 20 3c 63 6f 64 | 65 3e 26 6c 74 3b 3c 2f |the <cod|e><</|
|00005c90| 63 6f 64 65 3e 2c 20 3c | 63 6f 64 65 3e 26 67 74 |code>, <|code>>|
|00005ca0| 3b 3c 2f 63 6f 64 65 3e | 2c 20 6f 72 20 3c 63 6f |;</code>|, or <co|
|00005cb0| 64 65 3e 26 61 6d 70 3b | 3c 2f 63 6f 64 65 3e 5c |de>&|</code>\|
|00005cc0| 6e 22 0a 20 20 20 20 20 | 20 20 20 20 22 63 68 61 |n". | "cha|
|00005cd0| 72 61 63 74 65 72 73 2e | 5c 6e 22 29 3b 0a 0a 20 |racters.|\n");.. |
|00005ce0| 20 20 20 20 7d 20 65 6c | 73 65 20 69 66 20 28 65 | } el|se if (e|
|00005cf0| 72 72 5f 63 6f 64 65 20 | 3d 3d 20 32 29 20 7b 0a |rr_code |== 2) {.|
|00005d00| 0a 20 20 20 20 20 20 20 | 70 72 69 6e 74 66 28 22 |. |printf("|
|00005d10| 54 65 78 74 20 69 6e 70 | 75 74 20 66 69 65 6c 64 |Text inp|ut field|
|00005d20| 73 20 61 72 65 20 6e 6f | 74 20 61 6c 6c 6f 77 65 |s are no|t allowe|
|00005d30| 64 20 74 6f 20 63 6f 6e | 74 61 69 6e 20 63 61 72 |d to con|tain car|
|00005d40| 72 69 61 67 65 5c 6e 22 | 0a 20 20 20 20 20 20 20 |riage\n"|. |
|00005d50| 20 20 22 72 65 74 75 72 | 6e 73 2c 20 6e 65 77 20 | "retur|ns, new |
|00005d60| 6c 69 6e 65 2c 20 62 61 | 63 6b 73 70 61 63 65 2c |line, ba|ckspace,|
|00005d70| 20 66 6f 72 6d 20 66 65 | 65 64 2c 20 6f 72 20 76 | form fe|ed, or v|
|00005d80| 65 72 74 69 63 61 6c 20 | 74 61 62 20 63 6f 64 65 |ertical |tab code|
|00005d90| 73 2e 5c 6e 22 0a 20 20 | 20 20 20 20 20 20 20 22 |s.\n". | "|
|00005da0| 28 49 6e 20 66 61 63 74 | 2c 20 77 65 20 64 6f 6e |(In fact|, we don|
|00005db0| 27 74 20 6b 6e 6f 77 20 | 68 6f 77 20 79 6f 75 20 |'t know |how you |
|00005dc0| 6d 61 6e 61 67 65 64 20 | 74 6f 20 67 65 74 20 6f |managed |to get o|
|00005dd0| 6e 65 20 69 6e 20 74 68 | 65 72 65 5c 6e 22 0a 20 |ne in th|ere\n". |
|00005de0| 20 20 20 20 20 20 20 20 | 22 61 6e 79 77 61 79 2e | |"anyway.|
|00005df0| 29 5c 6e 22 29 3b 0a 0a | 20 20 20 20 20 7d 20 65 |)\n");..| } e|
|00005e00| 6c 73 65 20 69 66 20 28 | 65 72 72 5f 63 6f 64 65 |lse if (|err_code|
|00005e10| 20 3d 3d 20 33 29 20 7b | 0a 0a 20 20 20 20 20 20 | == 3) {|.. |
|00005e20| 20 70 72 69 6e 74 66 28 | 22 41 74 20 70 72 65 73 | printf(|"At pres|
|00005e30| 65 6e 74 2c 20 74 65 78 | 74 20 69 6e 70 75 74 20 |ent, tex|t input |
|00005e40| 66 69 65 6c 64 73 20 61 | 72 65 20 6e 6f 74 20 61 |fields a|re not a|
|00005e50| 6c 6c 6f 77 65 64 20 74 | 6f 20 63 6f 6e 74 61 69 |llowed t|o contai|
|00005e60| 6e 5c 6e 22 0a 20 20 20 | 20 20 20 20 20 20 22 64 |n\n". | "d|
|00005e70| 6f 75 62 6c 65 20 71 75 | 6f 74 65 73 20 28 5c 22 |ouble qu|otes (\"|
|00005e80| 29 2e 20 20 54 68 69 73 | 20 69 73 20 62 65 63 61 |). This| is beca|
|00005e90| 75 73 65 20 6e 6f 20 75 | 6e 69 66 6f 72 6d 20 6d |use no u|niform m|
|00005ea0| 65 74 68 6f 64 20 65 78 | 69 73 74 73 5c 6e 22 0a |ethod ex|ists\n".|
|00005eb0| 20 20 20 20 20 20 20 20 | 20 22 6f 66 20 6d 61 72 | | "of mar|
|00005ec0| 6b 69 6e 67 20 74 68 65 | 20 64 6f 75 62 6c 65 20 |king the| double |
|00005ed0| 71 75 6f 74 65 73 20 69 | 6e 20 66 6f 72 6d 73 20 |quotes i|n forms |
|00005ee0| 74 68 61 74 20 77 6f 72 | 6b 73 20 77 69 74 68 20 |that wor|ks with |
|00005ef0| 61 6c 6c 5c 6e 22 0a 20 | 20 20 20 20 20 20 20 20 |all\n". | |
|00005f00| 22 76 69 65 77 65 72 73 | 2e 20 20 53 69 6e 67 6c |"viewers|. Singl|
|00005f10| 65 20 71 75 6f 74 65 73 | 20 6d 61 79 2c 20 68 6f |e quotes| may, ho|
|00005f20| 77 65 76 65 72 2c 20 62 | 65 20 66 72 65 65 6c 79 |wever, b|e freely|
|00005f30| 20 75 73 65 64 2e 5c 6e | 22 29 3b 0a 0a 20 20 20 | used.\n|");.. |
|00005f40| 20 20 7d 20 65 6c 73 65 | 20 69 66 20 28 65 72 72 | } else| if (err|
|00005f50| 5f 63 6f 64 65 20 3d 3d | 20 34 29 20 7b 0a 0a 20 |_code ==| 4) {.. |
|00005f60| 20 20 20 20 20 20 70 72 | 69 6e 74 66 28 22 4e 75 | pr|intf("Nu|
|00005f70| 6c 6c 20 69 6e 70 75 74 | 20 66 69 65 6c 64 73 20 |ll input| fields |
|00005f80| 66 6f 75 6e 64 2e 20 20 | 54 6f 20 61 64 64 20 61 |found. |To add a|
|00005f90| 6e 20 69 74 65 6d 20 74 | 6f 20 74 68 65 20 22 20 |n item t|o the " |
|00005fa0| 54 49 54 4c 45 20 22 2c | 5c 6e 22 0a 20 20 20 20 |TITLE ",|\n". |
|00005fb0| 20 20 20 20 20 22 61 6c | 6c 20 66 69 65 6c 64 73 | "al|l fields|
|00005fc0| 20 6d 75 73 74 20 63 6f | 6e 74 61 69 6e 20 61 6e | must co|ntain an|
|00005fd0| 20 65 6e 74 72 79 20 61 | 66 74 65 72 20 6c 65 61 | entry a|fter lea|
|00005fe0| 64 69 6e 67 20 61 6e 64 | 20 74 72 61 69 6c 69 6e |ding and| trailin|
|00005ff0| 67 5c 6e 22 0a 20 20 20 | 20 20 20 20 20 20 22 73 |g\n". | "s|
|00006000| 70 61 63 65 73 20 61 72 | 65 20 72 65 6d 6f 76 65 |paces ar|e remove|
|00006010| 64 2e 5c 6e 22 29 3b 0a | 0a 20 20 20 20 20 7d 20 |d.\n");.|. } |
|00006020| 65 6c 73 65 20 7b 0a 0a | 20 20 20 20 20 20 20 70 |else {..| p|
|00006030| 72 69 6e 74 66 28 22 55 | 6e 69 64 65 6e 74 69 66 |rintf("U|nidentif|
|00006040| 69 65 64 20 74 65 78 74 | 20 69 6e 70 75 74 20 65 |ied text| input e|
|00006050| 72 72 6f 72 2e 5c 6e 22 | 29 3b 0a 20 20 20 20 0a |rror.\n"|);. .|
|00006060| 20 20 20 20 20 7d 0a 0a | 20 20 20 20 20 70 72 69 | }..| pri|
|00006070| 6e 74 66 28 22 50 6c 65 | 61 73 65 20 63 6f 72 72 |ntf("Ple|ase corr|
|00006080| 65 63 74 20 61 6e 64 20 | 72 65 73 75 62 6d 69 74 |ect and |resubmit|
|00006090| 20 74 68 65 20 74 65 78 | 74 2e 5c 6e 3c 50 3e 5c | the tex|t.\n<P>\|
|000060a0| 6e 22 29 3b 0a 0a 20 20 | 20 20 20 70 72 69 6e 74 |n");.. | print|
|000060b0| 66 28 22 54 68 65 20 64 | 61 74 61 20 65 6e 74 65 |f("The d|ata ente|
|000060c0| 72 65 64 20 6d 61 79 20 | 73 74 69 6c 6c 20 62 65 |red may |still be|
|000060d0| 20 61 76 61 69 6c 61 62 | 6c 65 20 66 72 6f 6d 20 | availab|le from |
|000060e0| 79 6f 75 72 20 76 69 65 | 77 65 72 5c 6e 22 0a 20 |your vie|wer\n". |
|000060f0| 20 20 20 20 20 20 22 62 | 79 20 75 73 69 6e 67 20 | "b|y using |
|00006100| 42 41 43 4b 20 74 6f 20 | 72 65 74 75 72 6e 20 74 |BACK to |return t|
|00006110| 6f 20 74 68 65 20 70 72 | 65 76 69 6f 75 73 20 66 |o the pr|evious f|
|00006120| 6f 72 6d 2e 5c 6e 22 29 | 3b 20 0a 0a 20 20 20 20 |orm.\n")|; .. |
|00006130| 20 65 72 72 6f 72 5f 66 | 6f 6f 74 65 72 28 22 22 | error_f|ooter(""|
|00006140| 29 3b 20 65 78 69 74 28 | 30 29 3b 0a 0a 20 20 20 |); exit(|0);.. |
|00006150| 7d 0a 0a 0a 2f 2a 20 2d | 2d 2d 2d 2d 2d 2d 2d 2d |}.../* -|--------|
|00006160| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00006170| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00006180| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00006190| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 0a 20 20 |--------|-----. |
|000061a0| 20 61 6c 72 65 61 64 79 | 5f 67 6f 74 5f 6f 6e 65 | already|_got_one|
|000061b0| 3a 20 61 6c 65 61 64 79 | 20 68 61 76 65 20 74 68 |: aleady| have th|
|000061c0| 65 20 73 61 6d 65 20 55 | 52 4c 20 69 6e 20 74 68 |e same U|RL in th|
|000061d0| 65 20 6c 69 73 74 0a 20 | 20 20 2d 2d 2d 2d 2d 2d |e list. | ------|
|000061e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000061f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00006200| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00006210| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 20 2a 2f |--------|----- */|
|00006220| 0a 20 20 20 76 6f 69 64 | 20 61 6c 72 65 61 64 79 |. void| already|
|00006230| 5f 67 6f 74 5f 6f 6e 65 | 28 29 20 7b 0a 0a 20 20 |_got_one|() {.. |
|00006240| 20 20 20 68 74 6d 6c 5f | 68 65 61 64 65 72 28 22 | html_|header("|
|00006250| 3a 20 41 6c 72 65 61 64 | 79 20 47 6f 74 20 4f 6e |: Alread|y Got On|
|00006260| 65 22 2c 20 22 22 29 3b | 0a 0a 20 20 20 20 20 70 |e", "");|.. p|
|00006270| 72 69 6e 74 66 28 45 52 | 52 4f 52 5f 49 4d 47 20 |rintf(ER|ROR_IMG |
|00006280| 22 20 53 6f 72 72 79 2c | 20 74 68 65 20 73 70 65 |" Sorry,| the spe|
|00006290| 63 69 66 69 65 64 20 69 | 74 65 6d 20 69 73 20 61 |cified i|tem is a|
|000062a0| 6c 72 65 61 64 79 20 69 | 6e 20 74 68 65 5c 6e 22 |lready i|n the\n"|
|000062b0| 0a 20 20 20 20 20 20 20 | 22 6c 69 73 74 2e 20 50 |. |"list. P|
|000062c0| 6c 65 61 73 65 20 63 68 | 6f 6f 73 65 20 61 6e 6f |lease ch|oose ano|
|000062d0| 74 68 65 72 20 69 74 65 | 6d 20 74 6f 20 61 64 64 |ther ite|m to add|
|000062e0| 2e 5c 6e 22 29 3b 0a 0a | 20 20 20 20 20 65 72 72 |.\n");..| err|
|000062f0| 6f 72 5f 66 6f 6f 74 65 | 72 28 22 22 29 3b 20 65 |or_foote|r(""); e|
|00006300| 78 69 74 28 30 29 3b 0a | 0a 20 20 20 7d 0a 0a 2f |xit(0);.|. }../|
|00006310| 2a 20 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |* ------|--------|
|00006320| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00006330| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00006340| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00006350| 2d 2d 2d 2d 2d 2d 2d 2d | 0a 20 20 20 62 61 64 5f |--------|. bad_|
|00006360| 6f 70 74 69 6f 6e 5f 66 | 6f 72 5f 71 75 65 73 74 |option_f|or_quest|
|00006370| 69 6f 6e 3a 20 62 61 64 | 20 6f 70 74 69 6f 6e 20 |ion: bad| option |
|00006380| 28 76 70 6c 75 73 2c 20 | 76 6d 69 6e 75 73 2c 20 |(vplus, |vminus, |
|00006390| 61 64 64 29 20 66 6f 72 | 20 71 75 65 73 74 69 6f |add) for| questio|
|000063a0| 6e 0a 20 20 20 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |n. ---|--------|
|000063b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000063c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000063d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000063e0| 2d 2d 2d 2d 2d 2d 2d 2d | 20 2a 2f 0a 20 20 20 76 |--------| */. v|
|000063f0| 6f 69 64 20 62 61 64 5f | 6f 70 74 69 6f 6e 5f 66 |oid bad_|option_f|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.